US 12,271,318 B2
Method and apparatus for managing a cache directory
Brandon K. Potter, Austin, TX (US); Marko Scrbak, Austin, TX (US); Sergey Blagodurov, Seattle, WA (US); Kishore Punniyamurthy, Austin, TX (US); and Nathaniel Morris, Columbus, OH (US)
Assigned to ADVANCED MICRO DEVICES, INC., Santa Clara, CA (US)
Filed by Advanced Micro Devices, Inc., Santa Clara, CA (US)
Filed on Dec. 28, 2020, as Appl. No. 17/135,657.
Prior Publication US 2022/0206946 A1, Jun. 30, 2022
Int. Cl. G06F 12/12 (2016.01); G06F 12/0817 (2016.01)
CPC G06F 12/12 (2013.01) [G06F 12/0817 (2013.01); G06F 2212/622 (2013.01)] 24 Claims
OG exemplary drawing
 
1. A method for managing a cache directory in a system comprising:
setting one or more configuration registers to control a multi-mode operation of cache eviction monitoring including either a first mode that provides continuous logging of eviction conflicts, or a second mode that provides logging of eviction conflicts based on one or more thresholds of conflict evictions being met:
monitoring, by hardware control logic, eviction conflicts among cache directory entries in the cache directory, wherein the cache directory entries correspond to pages which are cached in the system;
in response to an eviction of one or more cache directory entries in the cache directory, producing by the hardware control logic, cache directory victim entry information indicating one or more of the cache directory entries that have been evicted from the cache directory for a memory manager that assigns physical address space for pages of memory in the system; and
choosing a future page of memory from the physical address space based on the produced cache directory victim entry information.