Method and system for leveraging non-uniform miss penality in cache replacement policy to improve processor performance and power
US-2019004970-A1 · Jan 3, 2019 · US
US11880310B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11880310-B2 |
| Application number | US-202117553044-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 16, 2021 |
| Priority date | Oct 31, 2019 |
| Publication date | Jan 23, 2024 |
| Grant date | Jan 23, 2024 |
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.
A processor includes a cache having two or more test regions and a larger non-test region. The processor further includes a cache controller that applies different cache replacement policies to the different test regions of the cache, and a performance monitor that measures performance metrics for the different test regions, such as a cache hit rate at each test region. Based on the performance metrics, the cache controller selects a cache replacement policy for the non-test region, such as selecting the replacement policy associated with the test region having the better performance metrics among the different test regions. The processor deskews the memory access measurements in response to a difference in the amount of accesses to the different test regions exceeding a threshold.
Opening claim text (preview).
What is claimed is: 1. A method, comprising: selecting a measurement policy based on a first number of accesses to a first region of a cache and a second number of accesses to a second region of the cache; and setting a cache replacement policy for a third region of the cache based on the measurement policy. 2. The method of claim 1 , wherein selecting the measurement policy comprises: determining a difference between the first number of accesses and the second number of accesses; selecting a first measurement policy in response to the difference being less than a threshold; and selecting a second measurement policy in response to the difference being greater than or equal to the threshold. 3. The method of claim 2 , wherein: the first measurement policy comprises allowing changes to the cache replacement policy; and the second measurement policy comprises preventing changes to the cache replacement policy. 4. The method of claim 2 , wherein: the first measurement policy comprises applying a first weight to the accesses to the first region and a second weight to the accesses to the second region; the second measurement policy comprises applying a third weight to the accesses to the first region and a fourth weight to the accesses to the second region; and wherein setting the cache replacement policy comprises setting the cache replacement policy based on the weighted accesses to the first region and the weighted accesses to the second region. 5. The method of claim 4 , wherein: the first weight and the second weight are the same; and the third weight is different from the fourth weight. 6. The method of claim 1 , wherein selecting the measurement policy comprises: determining a first difference between the first number of accesses and the second number of accesses; selecting a first weight for the first region and a second weight for the second region based on the first difference; weighting accesses to the first region based on the first weight and weighting accesses to the second region based on the second weight; and wherein setting the cache replacement policy comprises setting the cache replacement policy based on the weighted accesses to the first region and the accesses to the second region. 7. The method of claim 1 , wherein selecting the measurement policy comprises selecting the measurement policy based on: a first difference between a number of accesses of a first type to the first region and a number of accesses of the first type to the second region; and a second difference between a number of accesses of a second type to the first region and a number of accesses of the second type to the second region. 8. The method of claim 7 , wherein the first type comprises demand accesses and the second type comprises prefetch accesses. 9. The method of claim 1 , wherein setting the cache replacement policy comprises setting the cache replacement policy based on a cache hit rate at the first region of the cache and a cache hit rate at the second region of the cache. 10. The method of claim 1 , wherein setting the cache replacement policy for the third region of the cache comprises setting the cache replacement policy further based on a cache miss rate at the first region of the cache and a cache miss rate at the second region of the cache. 11. A method, comprising: selecting a hash value based on a first number of accesses to a first region of a cache and a second number of accesses to a second region of the cache; and generating cache address values for a third region of the cache based on the selected hash value; and storing data at the third region of the cache based on the cache address values. 12. The method of claim 11 , wherein selecting the hash value comprises: determining a difference between the first number of accesses and the second number of accesses; selecting a first hash value in response to the difference being less than a threshold; and selecting a hash value in response to the difference being greater than or equal to the threshold. 13. The method of claim 11 , further comprising: changing addresses associated with the first region of the cache based on the first number of accesses to the first region of the cache and the second number of accesses to the second region of the cache. 14. A processor, comprising: a cache comprising a first region, a second region, and a third region; and a cache controller configured to: select a measurement policy based on a first number of accesses to the first region and a second number of accesses to the second region; and set a cache replacement policy for the third region based on the first number of accesses to the first region and the second number of accesses to the second region and based on the measurement policy. 15. The processor of claim 14 , wherein the cache controller is configured to select the measurement policy by: determining a difference between the first number of accesses and the second number of accesses; selecting a first measurement policy in response to the difference being less than a threshold; and selecting a second measurement policy in response to the difference being greater than or equal to the threshold. 16. The processor of claim 15 , wherein: the first measurement policy comprises allowing changes to the cache replacement policy; and the second measurement policy comprises preventing changes to the cache replacement policy. 17. The processor of claim 15 , wherein: the first measurement policy comprises applying a first weight to the accesses to the first region and a second weight to the accesses to the second region; the second measurement policy comprises applying a third weight to the accesses to the first region and a fourth weight to the accesses to the second region; and wherein setting the cache replacement policy comprises setting the cache replacement policy based on the weighted accesses to the first region and the weighted accesses to the second region. 18. The processor of claim 17 , wherein: the first weight and the second weight are the same; and the third weight is different from the fourth weight. 19. The processor of claim 14 , wherein the cache controller is configured to select the measurement policy by: determining a first difference between the first number of accesses and the second number of accesses; selecting a first weight and a second weight for the first region and the second region based on the first difference; weighting accesses to the first region based on the first weight and weighting accesses to the second region based on the second weight; and wherein setting the cache replacement policy comprises selecting the cache replacement policy based on the weighted accesses to the first region and the weighted accesses to the second region. 20. The processor of claim 14 , wherein the cache replacement policy sets a prefetch policy for the third region of the cache.
Replacement control · CPC title
Reconfiguration of cache memory · CPC title
with special data handling, e.g. priority of data or instructions, handling errors or pinning · CPC title
using additional replacement algorithms · CPC title
using adaptive policy · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.