Cache access measurement deskew

US11880310B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11880310-B2
Application numberUS-202117553044-A
CountryUS
Kind codeB2
Filing dateDec 16, 2021
Priority dateOct 31, 2019
Publication dateJan 23, 2024
Grant dateJan 23, 2024

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

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.

First claim

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.

Assignees

Inventors

Classifications

  • G06F12/12Primary

    Replacement control · CPC title

  • Reconfiguration of cache memory · CPC title

  • G06F12/126Primary

    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

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11880310B2 cover?
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…
Who is the assignee on this patent?
Advanced Micro Devices Inc
What technology area does this patent fall under?
Primary CPC classification G06F12/12. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 23 2024 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).