发明名称 Dynamic index selection in a hardware cache
摘要 Systems and methods are disclosed for improving the performance of cache memory in a computer system by dynamically selecting an index for caching main memory while an application is running. A disclosed example of a memory system includes a cache including a data array, a primary tag array, and at least one secondary tag array. A currently selected index is used to index data bits to the data array and tag bits to the primary tag array. The performance of at least one candidate index is evaluated by indexing tag bits to the secondary tag array, without caching any data using the candidate index while the candidate index is under evaluation. If the candidate index has a better hit rate than the currently selected index, the memory system switches to using the candidate index to cache data.
申请公布号 US8949530(B2) 申请公布日期 2015.02.03
申请号 US201113196071 申请日期 2011.08.02
申请人 International Business Machines Corporation 发明人 Krishna Mvv A.;Yifrach Shaul
分类号 G06F12/08 主分类号 G06F12/08
代理机构 代理人 Schnurmann H. Daniel;Streets Jeffrey L.
主权项 1. A method for improving performance of cache memory in a computer, comprising: the computer running a software application that generates memory blocks to be stored in memory; a cache controller indexing data bits of the memory blocks to a data array in the cache memory using a currently selected index; the cache controller simultaneously indexing tag bits of the memory blocks to a primary tag array using the currently selected index and indexing tag bits of the memory blocks to a secondary tag array using a candidate index, and obtaining a hit rate at each of the primary and secondary tag arrays; the cache controller sequentially evaluating a plurality of candidate indexes by indexing to the same secondary tag array with each candidate index for successive evaluation periods while measuring the hit rate in the secondary tag array; and the cache controller dynamically selecting the index that produces the greatest hit rate.
地址 Armonk NY US