Apparatus and method for lazy translation lookaside buffer (TLB) coherence
First Claim
Patent Images
1. A processor comprising:
- one or more cores to execute instructions and process data;
one or more translation lookaside buffers (TLBs) each comprising a plurality of entries to cache virtual-to-physical address translations usable by the set of one or more cores when executing the instructions;
one or more epoch counters each programmed with a specified epoch value, wherein the epoch value is selected to be less than the time between occurrences of context switches on the processor; and
TLB validation logic to validate a specified set of TLB entries at intervals specified by the epoch value wherein the epoch value is set between 1 and 100 microseconds.
1 Assignment
0 Petitions
Accused Products
Abstract
An apparatus and method are described for managing TLB coherence. For example, one embodiment of a processor comprises: one or more cores to execute instructions and process data; one or more translation lookaside buffers (TLBs) each comprising a plurality of entries to cache virtual-to-physical address translations usable by the set of one or more cores when executing the instructions; one or more epoch counters each programmed with a specified epoch value; and TLB validation logic to validate a specified set of TLB entries at intervals specified by the epoch value.
-
Citations
18 Claims
-
1. A processor comprising:
-
one or more cores to execute instructions and process data; one or more translation lookaside buffers (TLBs) each comprising a plurality of entries to cache virtual-to-physical address translations usable by the set of one or more cores when executing the instructions; one or more epoch counters each programmed with a specified epoch value, wherein the epoch value is selected to be less than the time between occurrences of context switches on the processor; and TLB validation logic to validate a specified set of TLB entries at intervals specified by the epoch value wherein the epoch value is set between 1 and 100 microseconds. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method comprising:
-
executing instructions on a set of one or more cores to execute instructions and process data; caching virtual-to-physical address translations usable by the set of one or more cores within one or more translation lookaside buffers (TLBs) when executing the instructions; programming one or more epoch counters with specified epoch values, wherein the epoch value is selected to be less than a rate at which context switches are to occur on the processor; and validating a specified set of TLB entries at intervals specified by one or more of the epoch values wherein the epoch value is set between 1 and 100 microseconds. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A system comprising:
-
a memory to store instructions and data; a processor to execute the instructions and process the data; a graphics processor to perform graphics operations in response to graphics instructions; a network interface to receive and transmit data over a network; an interface for receiving user input from a mouse or cursor control device, the plurality of cores executing the instructions and processing the data responsive to the user input; the processor comprising; one or more cores to execute instructions and process data; one or more translation lookaside buffers (TLBs) each comprising a plurality of entries to cache virtual-to-physical address translations usable by the set of one or more cores when executing the instructions; one or more epoch counters each programmed with a specified epoch value, wherein the epoch value is selected to be less than the time between occurrences of context switches on the processor; and TLB validation logic to validate a specified set of TLB entries at intervals specified by the epoch value, wherein the epoch value is set between 1 and 100 microseconds. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification