发明名称 Read-write partitioning of cache memory
摘要 A system and method to enforce read-write partitioning in an N-way, set associative cache may limit a number of ways allocated for storing modified data in a set to a value W and limit a number of ways holding read data to a value R. The cache may be configured where N=R+W. Furthermore, a number of ways storing prefetched read data may be limited to RP, while a number of ways storing prefetched modified data may be limited to WP. The values for W, R, WP, and/or RP may be determined using a prediction method to estimate cache miss rates for different values for W, R, WP, and/or RP and selecting values corresponding to a desired cache miss rate, and so allowing for selective application of the read-write partitioning.
申请公布号 US9223710(B2) 申请公布日期 2015.12.29
申请号 US201313844823 申请日期 2013.03.16
申请人 Intel Corporation 发明人 Alameldeen Alaa R.;Wilkerson Christopher B.;Khan Samira M.
分类号 G06F12/00;G06F12/08;G06F12/12 主分类号 G06F12/00
代理机构 Trop, Pruner & Hu, P.C. 代理人 Trop, Pruner & Hu, P.C.
主权项 1. A method comprising: obtaining a first maximum value indicating a maximum number of ways containing modified data in an multiple-way, set associative data cache; detecting a write address of a write instruction that misses in the data cache; and allocating, in compliance with a write policy recognizing the first maximum value, a way of a set associated with the write address to cache write data included in the write instruction, wherein when the set includes at least the first maximum value of ways containing modified data: permitting an over limit condition by allocating the way of the set that contains unmodified data and caching the write data in the way, the way containing the unmodified data, to increase a number of ways of the set containing modified data to more than the first maximum value;indicating the way as containing modified data;setting an over limit flag when the number of ways of the set containing modified data is greater than the first maximum value; andupon detecting a read address of a read instruction for read data that misses in the data cache, performing the following when the over limit flag is set: evicting modified data of a selected way of the set; andcaching the read data of the read instruction in the selected way, to reduce the number of ways of the set containing modified data.
地址 Santa Clara CA US