Synchronizing Access To Resources In A Hybrid Computing Environment
First Claim
1. A method of synchronizing access to resources in a hybrid computing environment, the hybrid computing environment comprising a host computer having a host computer architecture, a plurality of accelerators having an accelerator architecture, the accelerator architecture optimized, with respect to the host computer architecture, for speed of execution of a particular class of computing functions, the host computer and the accelerators adapted to one another for data communications by a system level message passing module, the method comprising:
- providing in a registry, by the system level messaging passing module to processes executing on the accelerators and the host computer, a key associated with a resource accessible by each of the processes, the key having a value that represents access permissions for the resource;
attempting, by a process, to access the resource including determining whether a current value of the key in the registry represents an unlocked state for the resource;
if the current value of the key in the registry represents an unlocked state for the resource, attempting, by the process, to lock access to the resource including setting the value of the key to a unique identification of the process attempting to access the resource;
determining, by the process, whether the current value of the key is the unique identification of the process attempting to access the resource;
if the current value of the key is the unique identification of the process attempting to access the resource, accessing the resource by the process; and
if the current value of the key is not the unique identification of the process attempting to access the resource, the process is not currently authorized to access the resource.
1 Assignment
0 Petitions
Accused Products
Abstract
Synchronizing access to resources in a hybrid computing environment that includes a host computer, a plurality of accelerators, the host computer and the accelerators adapted to one another for data communications by a system level message passing module, where synchronizing access to resources includes providing in a registry, to processes executing on the accelerators and the host computer, a key associated with a resource, the key having a value; attempting, by a process, to access the resource including determining whether a current value of the key represents an unlocked state for the resource; if the current value represents an unlocked state, attempting to lock access to the resource including setting the value to a unique identification of the process; determining whether the current value is the unique identification of the process; if the current value is the unique identification accessing the resource by the process.
-
Citations
20 Claims
-
1. A method of synchronizing access to resources in a hybrid computing environment, the hybrid computing environment comprising a host computer having a host computer architecture, a plurality of accelerators having an accelerator architecture, the accelerator architecture optimized, with respect to the host computer architecture, for speed of execution of a particular class of computing functions, the host computer and the accelerators adapted to one another for data communications by a system level message passing module, the method comprising:
-
providing in a registry, by the system level messaging passing module to processes executing on the accelerators and the host computer, a key associated with a resource accessible by each of the processes, the key having a value that represents access permissions for the resource; attempting, by a process, to access the resource including determining whether a current value of the key in the registry represents an unlocked state for the resource; if the current value of the key in the registry represents an unlocked state for the resource, attempting, by the process, to lock access to the resource including setting the value of the key to a unique identification of the process attempting to access the resource; determining, by the process, whether the current value of the key is the unique identification of the process attempting to access the resource; if the current value of the key is the unique identification of the process attempting to access the resource, accessing the resource by the process; and if the current value of the key is not the unique identification of the process attempting to access the resource, the process is not currently authorized to access the resource. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A hybrid computing environment for synchronizing access to resources, the hybrid computing environment comprising a host computer having a host computer architecture, a plurality of accelerators having an accelerator architecture, the accelerator architecture optimized, with respect to the host computer architecture, for speed of execution of a particular class of computing functions, the host computer and the accelerators adapted to one another for data communications by a system level message passing module, the hybrid computing environment further comprising a computer processor, a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions capable of:
-
providing in a registry, by the system level messaging passing module to processes executing on the accelerators and the host computer, a key associated with a resource accessible by each of the processes, the key having a value that represents access permissions for the resource; attempting, by the process, to access the resource including determining whether a current value of the key in the registry represents an unlocked state for the resource; if the current value of the key in the registry represents an unlocked state for the resource, attempting, by the process, to lock access to the resource including setting the value of the key to a unique identification of the process attempting to access the resource; determining, by the process, whether the current value of the key is the unique identification of the process attempting to access the resource; if the current value of the key is the unique identification of the process attempting to access the resource, accessing the resource by the process; and if the current value of the key is not the unique identification of the process attempting to access the resource, the process is not currently authorized to access the resource. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A computer program product for synchronizing access to resources in a hybrid computing environment, the hybrid computing environment comprising a host computer having a host computer architecture, a plurality of accelerators having an accelerator architecture, the accelerator architecture optimized, with respect to the host computer architecture, for speed of execution of a particular class of computing functions, the host computer and the accelerators adapted to one another for data communications by a system level message passing module, the computer program product disposed in a computer readable, signal bearing medium, the computer program product comprising computer program instructions capable of:
-
providing in a registry, by the system level messaging passing module to processes executing on the accelerators and the host computer, a key associated with a resource accessible by each of the processes, the key having a value that represents access permissions for the resource; attempting, by the process, to access the resource including determining whether a current value of the key in the registry represents an unlocked state for the resource; if the current value of the key in the registry represents an unlocked state for the resource, attempting, by the process, to lock access to the resource including setting the value of the key to a unique identification of the process attempting to access the resource; determining, by the process, whether the current value of the key is the unique identification of the process attempting to access the resource; if the current value of the key is the unique identification of the process attempting to access the resource, accessing the resource by the process; and if the current value of the key is not the unique identification of the process attempting to access the resource, the process is not currently authorized to access the resource. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
Specification