Facilitating access to memory locality domain information
US-2019138219-A1 · May 9, 2019 · US
US11467937B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11467937-B2 |
| Application number | US-202017004589-A |
| Country | US |
| Kind code | B2 |
| Filing date | Aug 27, 2020 |
| Priority date | Jun 26, 2020 |
| Publication date | Oct 11, 2022 |
| Grant date | Oct 11, 2022 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
An electronic device includes a cache with a cache controller and a cache memory. The electronic device also includes a cache policy manager. The cache policy manager causes the cache controller to use two or more cache policies for cache operations in each of multiple test regions in the cache memory, with different configuration values for the two or more cache policies being used in each test region. The cache policy manager selects a selected configuration value for at least one cache policy of the two or more cache policies based on performance metrics for cache operations while using the different configuration values for the two or more cache policies in the test regions. The cache policy manager causes the cache controller to use the selected configuration value when using the at least one cache policy for cache operations in a main region of the cache memory.
Opening claim text (preview).
What is claimed is: 1. An electronic device, comprising: a cache that includes a cache controller and cache memory; and a cache policy manager configured to: cause the cache controller to use two or more cache policies for cache operations in each of multiple test regions in the cache memory, with different configuration values for the two or more cache policies being used in each test region; select a selected configuration value for at least one cache policy of the two or more cache policies based on performance metrics for cache operations; and cause the cache controller to use the selected configuration value when using the at least one cache policy for cache operations in a main region of the cache memory. 2. The electronic device of claim 1 , wherein, for selecting the selected configuration value, the cache policy manager is configured to: record performance metrics for competing groups of test regions while the cache controller uses the two or more cache policies for cache operations in the multiple test regions, each competing group of test regions including first and second groups of test regions in which a respective configuration value is the same for all of the test regions; and select the selected configuration value from among the competing groups of test regions meeting corresponding group performance metric targets. 3. The electronic device of claim 2 , wherein, when recording the performance metrics, the cache policy manager is configured to: update counters associated with competing groups of test regions, the updating including, for each competing group of test regions: increasing the counter associated with that competing group of test regions when an event occurs for the first group of test regions for that competing group of test regions; and decreasing the counter associated with that competing group of test regions when the event occurs for the second group of test regions for that competing group of test regions. 4. The electronic device of claim 3 , wherein, when selecting the selected configuration value, the cache policy manager is configured to: starting from a first competing group of test regions and until reaching a final competing group of test regions, for a current competing group of test regions: determine, based on the counter associated with the current competing group of test regions, a particular group of test regions among the first or the second groups of test regions in the current competing group of test regions that meets a performance metric target value; and set, as the current competing group of test regions, the particular group of test regions; and select the selected configuration value from among the configuration values for the final competing group of test regions. 5. The electronic device of claim 1 , wherein, for selecting the selected configuration value, the cache policy manager is configured to: record performance metrics for competing groups of test regions while the cache controller uses the two or more cache policies for cache operations in the multiple test regions, each competing group of test regions having a first set of test regions that includes a respective one of the test regions alone and a second set of test regions that includes the remaining test regions; and select the selected configuration value from among the competing groups of test regions that meets a group performance metric target. 6. The electronic device of claim 5 , wherein, when recording the performance metrics, the cache policy manager is configured to: update counters associated with the competing groups of test regions, the updating including, for each competing group of test regions: increasing the counter associated with that competing group of test regions when an event occurs for the one of the test regions in the first set of test regions for that competing group of test regions; and decreasing the counter associated with that competing group of test regions when the event occurs for any of the remaining test regions in the second set of test regions for that competing group of test regions. 7. The electronic device of claim 6 , wherein, when increasing the counter associated with a given competing group of test regions, the cache policy manager is configured to: increase the counter in proportion to a ratio of a number of test regions in the first set of test regions and the second set of test regions for the given competing group of test regions. 8. The electronic device of claim 6 , wherein, when selecting the selected configuration value, the cache policy manager is configured to: determine, based on the counters associated with the competing groups of test regions, a particular competing group of test regions for which the counter meets a performance metric target value; select the selected configuration value from among the configuration values used for the one of the test regions in the first set of test regions for the particular competing group of test regions. 9. The electronic device of claim 1 , wherein, for selecting the selected configuration value, the cache policy manager is configured to: record performance metrics for each test region while the cache controller uses the two or more cache policies for cache operations in the multiple test regions; and select the selected configuration value from the test region meeting corresponding group performance metric targets. 10. The electronic device of claim 1 , wherein, when using the two or more cache policies for cache operations, the cache controller is configured to: in accordance with each of two separate cache policies, control at least one of: storage of data in cache blocks in the test regions of the cache memory; accesses of data in cache blocks in the test regions of the cache memory; and eviction of data in cache blocks in the test regions of the cache memory. 11. The electronic device of claim 1 , wherein, when using the two or more cache policies for cache operations, the cache controller is configured to use one or more of: a timing policy that dictates how long data of particular types is retained in cache blocks in the cache memory; a data copy policy that dictates whether copies of data of particular types are to be stored in cache blocks in the cache memory; a replacement policy that dictates conditions under which data is to be evicted from the cache memory to clear space for storing other data in the cache memory; and a modified data write back policy for data in cache blocks in the cache memory. 12. The electronic device of claim 1 , wherein: the multiple test regions in the cache memory are of first size in bytes; and the main region of the cache memory is of a second size in bytes, the second size being one or more orders of magnitude larger than the first size. 13. A method for performing cache operations in a cache memory in an electronic device that includes the cache memory, a cache controller and cache memory in the cache memory, and a cache policy manager, the method comprising: causing, by the cache policy manager, the cache controller to use two or more cache policies for cache operations in each of multiple test regions in the cache memory, with different configuration values for the two or more cache policies being used in each test region; selecting, by the cache policy manager, a selected configuration value for at least one cache policy of the two or more cache policies based on performance metrics for cache operations; and causing, by the cache policy manager, the cache controller to use the selected configuration value when using the at least one cache polic
Performance improvement · CPC title
Monitoring involving counting · CPC title
with main memory updating (G06F12/0806 takes precedence) · CPC title
by exceeding a count or rate limit, e.g. word- or bit count limit · CPC title
Performance evaluation by tracing or monitoring · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.