Apparatus and method for accelerating operations in a processor which uses shared virtual memory
First Claim
Patent Images
1. A system comprising:
- one or more simultaneous multithreading (SMT) cores, one or more of the SMT cores perform out-of-order instruction execution for a plurality of threads;
a memory subsystem comprising a system memory and a plurality of cache levels communicatively coupled to one or more of the SMT cores; and
an accelerator communicatively coupled to one or more of the cores and the memory subsystem, the accelerator comprising;
a memory management circuit to attempt a virtual-to-physical address translation by querying a translation lookaside buffer (TLB) containing a mapping of virtual-to-physical addresses,the memory management circuit to access a page table from the memory subsystem to perform the translation if the query to the TLB fails to locate a translation for a particular virtual address;
a memory interface circuit to interconnect the accelerator to the memory subsystem, the memory interface circuit to access the memory subsystem using the address translation provided by the memory management circuit; and
execution circuitry to execute instructions and process data retrieved from the memory subsystem.
0 Assignments
0 Petitions
Accused Products
Abstract
An apparatus and method are described for coupling a front end core to an accelerator component (e.g., such as a graphics accelerator). For example, an apparatus is described comprising: an accelerator comprising one or more execution units (EUs) to execute a specified set of instructions; and a front end core comprising a translation lookaside buffer (TLB) communicatively coupled to the accelerator and providing memory access services to the accelerator, the memory access services including performing TLB lookup operations to map virtual to physical addresses on behalf of the accelerator and in response to the accelerator requiring access to a system memory.
39 Citations
3 Claims
-
1. A system comprising:
-
one or more simultaneous multithreading (SMT) cores, one or more of the SMT cores perform out-of-order instruction execution for a plurality of threads; a memory subsystem comprising a system memory and a plurality of cache levels communicatively coupled to one or more of the SMT cores; and an accelerator communicatively coupled to one or more of the cores and the memory subsystem, the accelerator comprising; a memory management circuit to attempt a virtual-to-physical address translation by querying a translation lookaside buffer (TLB) containing a mapping of virtual-to-physical addresses, the memory management circuit to access a page table from the memory subsystem to perform the translation if the query to the TLB fails to locate a translation for a particular virtual address; a memory interface circuit to interconnect the accelerator to the memory subsystem, the memory interface circuit to access the memory subsystem using the address translation provided by the memory management circuit; and execution circuitry to execute instructions and process data retrieved from the memory subsystem. - View Dependent Claims (2, 3)
-
Specification