Administering registered virtual addresses in a hybrid computing environment including maintaining a cache of ranges of currently registered virtual addresses
First Claim
1. A method of administering registered virtual addresses in a hybrid computing environment, the hybrid computing environment comprising a host computer having a host computer architecture, an accelerator 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 accelerator connected to one another for data communications by a system level message passing module, the method comprising:
- maintaining, by the system level message passing module, a cache of ranges of currently registered virtual addresses, the cache comprising entries associating a range of currently registered virtual addresses, a handle representing physical addresses mapped to the range of currently registered virtual addresses, and a counter identifying the number of virtual addresses in the range of currently registered virtual addresses that are currently in use;
determining, by the system level message passing module, whether to register ranges of virtual addresses in dependence upon the cache of ranges of currently registered virtual addresses; and
determining, by the system level message passing module, whether to deregister ranges of virtual addresses in dependence upon the cache of ranges of currently registered virtual addresses.
1 Assignment
0 Petitions
Accused Products
Abstract
Administering registered virtual addresses in a hybrid computing environment that includes a host computer, an accelerator, 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 accelerator adapted to one another for data communications by a system level message passing module, where administering registered virtual addresses includes maintaining a cache of ranges of currently registered virtual addresses, the cache including entries associating a range of currently registered virtual addresses, a handle representing physical addresses mapped to the range of currently registered virtual addresses, and a counter; determining whether to register ranges of virtual addresses in dependence upon the cache of ranges of currently registered virtual addresses; and determining whether to deregister ranges of virtual addresses in dependence upon the cache of ranges of currently registered virtual addresses.
78 Citations
18 Claims
-
1. A method of administering registered virtual addresses in a hybrid computing environment, the hybrid computing environment comprising a host computer having a host computer architecture, an accelerator 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 accelerator connected to one another for data communications by a system level message passing module, the method comprising:
-
maintaining, by the system level message passing module, a cache of ranges of currently registered virtual addresses, the cache comprising entries associating a range of currently registered virtual addresses, a handle representing physical addresses mapped to the range of currently registered virtual addresses, and a counter identifying the number of virtual addresses in the range of currently registered virtual addresses that are currently in use; determining, by the system level message passing module, whether to register ranges of virtual addresses in dependence upon the cache of ranges of currently registered virtual addresses; and determining, by the system level message passing module, whether to deregister ranges of virtual addresses in dependence upon the cache of ranges of currently registered virtual addresses. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A hybrid computing environment for administering registered virtual addresses, the hybrid computing environment comprising a host computer having a host computer architecture, an accelerator 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 accelerator connected 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 that, when executed, cause the hybrid computing environment to perform the steps of:
-
maintaining, by the system level message passing module, a cache of ranges of currently registered virtual addresses, the cache comprising entries associating a range of currently registered virtual addresses, a handle representing physical addresses mapped to the range of currently registered virtual addresses, and a counter identifying the number of virtual addresses in the range of currently registered virtual addresses that are currently in use; determining, by the system level message passing module, whether to register ranges of virtual addresses in dependence upon the cache of ranges of currently registered virtual addresses; and determining, by the system level message passing module, whether to deregister ranges of virtual addresses in dependence upon the cache of ranges of currently registered virtual addresses. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A computer program product for administering registered virtual addresses in a hybrid computing environment, the hybrid computing environment comprising a host computer having a host computer architecture, an accelerator 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 accelerator to one another for data communications by a system level message passing module, the computer program product disposed in a non-transitory computer readable storage medium, the computer program product comprising computer program instructions that, when executed, cause the hybrid computing environment to perform the steps of:
-
maintaining, by the system level message passing module, a cache of ranges of currently registered virtual addresses, the cache comprising entries associating a range of currently registered virtual addresses, a handle representing physical addresses mapped to the range of currently registered virtual addresses, and a counter identifying the number of virtual addresses in the range of currently registered virtual addresses that are currently in use; determining, by the system level message passing module, whether to register ranges of virtual addresses in dependence upon the cache of ranges of currently registered virtual addresses; and determining, by the system level message passing module, whether to deregister ranges of virtual addresses in dependence upon the cache of ranges of currently registered virtual addresses. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification