NVIDIA Corporation
TECHNIQUE FOR EFFICIENTLY ALLOWING SIMULTANEOUS ACCESS TO RESOURCES IN A COMPUTING SYSTEM
Last updated:
Abstract:
Memory page table invalidations for multiple execution contexts (clients or guests) of a memory system are conventionally queued in a single physical command queue. The multiple execution contexts contend to access the queue, resulting in low performance. Instead of contending with other execution contexts to insert invalidation commands into a single physical command queue, a virtual interface and one or more virtual command queues are allocated to each guest. The execution contexts may simultaneously transmit invalidation commands for the memory system through their respective virtual interface. Additionally, each execution context may also transmit other (less often issued) commands through a hypervisor. Error handling and/or illegal access checks specific to invalidation commands that were previously performed by the hypervisor are now performed by the respective virtual interface(s).
Utility
29 May 2019
3 Dec 2020