Administering registered virtual addresses in a hybrid computing environment including maintaining a watch list of currently registered virtual addresses by an operating system
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 coupled to one another for data communications by a system level message passing module, the method comprising:
- receiving from an operating system, a notification of a change in physical to virtual address mappings of a particular range of virtual addresses falling within a range of currently registered virtual addresses included in a watch list;
in response to receiving the notification from the operating system, updating, by the system level message passing module, a cache of ranges of currently registered virtual addresses to reflect the change in physical to virtual address mappings, wherein updating the cache of ranges of currently registered virtual addresses to reflect the change further comprises;
evicting from the cache a previous entry for the particular range of virtual addresses including deregistering the particular range of virtual addresses; and
adding, to the cache, a new entry for the particular range of virtual addresses including registering again the particular range of virtual addresses.
1 Assignment
0 Petitions
Accused Products
Abstract
Administering registered virtual addresses in a hybrid computing environment that includes a host computer and 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, by an operating system, a watch list of ranges of currently registered virtual addresses; upon a change in physical to virtual address mappings of a particular range of virtual addresses falling within the ranges included in the watch list, notifying the system level message passing module by the operating system of the change; and updating, by the system level message passing module, a cache of ranges of currently registered virtual addresses to reflect the change in physical to virtual address mappings.
95 Citations
12 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 coupled to one another for data communications by a system level message passing module, the method comprising:
-
receiving from an operating system, a notification of a change in physical to virtual address mappings of a particular range of virtual addresses falling within a range of currently registered virtual addresses included in a watch list; in response to receiving the notification from the operating system, updating, by the system level message passing module, a cache of ranges of currently registered virtual addresses to reflect the change in physical to virtual address mappings, wherein updating the cache of ranges of currently registered virtual addresses to reflect the change further comprises; evicting from the cache a previous entry for the particular range of virtual addresses including deregistering the particular range of virtual addresses; and adding, to the cache, a new entry for the particular range of virtual addresses including registering again the particular range of virtual addresses. - View Dependent Claims (2, 3, 4)
-
-
5. 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 coupled 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:
-
receiving from an operating system, a notification of a change in physical to virtual address mappings of a particular range of virtual addresses falling within a range of currently registered virtual addresses included in a watch list; in response to receiving the notification from the operating system, updating, by the system level message passing module, a cache of ranges of currently registered virtual addresses to reflect the change in physical to virtual address mappings, wherein updating the cache of ranges of currently registered virtual addresses to reflect the change further comprises; evicting from the cache a previous entry for the particular range of virtual addresses including deregistering the particular range of virtual addresses; and adding, to the cache, a new entry for the particular range of virtual addresses including registering again the particular range of virtual addresses. - View Dependent Claims (6, 7, 8)
-
-
9. 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 coupled to one another for data communications by a system level message passing module, the computer program product disposed in a non-transitory computer readable medium, the computer program product comprising computer program instructions capable of:
-
receiving from an operating system, a notification of a change in physical to virtual address mappings of a particular range of virtual addresses falling within a range of currently registered virtual addresses included in a watch list; in response to receiving the notification from the operating system, updating, by the system level message passing module, a cache of ranges of currently registered virtual addresses to reflect the change in physical to virtual address mappings, wherein updating the cache of ranges of currently registered virtual addresses to reflect the change further comprises; evicting from the cache a previous entry for the particular range of virtual addresses including deregistering the particular range of virtual addresses; and adding, to the cache, a new entry for the particular range of virtual addresses including registering again the particular range of virtual addresses. - View Dependent Claims (10, 11, 12)
-
Specification