发明名称 ACCESS-BASED EVICTION OF BLOCKS FROM SOLID STATE DRIVE CACHE MEMORY
摘要 Methods and systems are presented for allocating CPU cycles among processes in a storage system. One method includes operations for maintaining segments in a first memory, each segment including blocks, and for maintaining a block temperature for each block in a second memory. The first memory is a read-cache where one segment is written at a time, and each block is readable from the first memory without reading the corresponding complete segment. The block temperature is based on the frequency of access to the respective block, and a segment temperature is based on the block temperature of its blocks. Additionally, the segment with the lowest segment temperature is selected for eviction from the second memory, and blocks in the selected segment with a block temperature greater than a threshold temperature are identified. The selected segment is evicted, and a segment with the identified blocks is written to the first memory.
申请公布号 US2016371186(A1) 申请公布日期 2016.12.22
申请号 US201615256463 申请日期 2016.09.02
申请人 Nimble Storage, Inc. 发明人 Shetty Pradeep;Karmarkar Sandeep;Ramamoorthy Senthil Kumar;Maheshwari Umesh;Buca Vanco
分类号 G06F12/0831;G06F3/06;G11C7/10;G06F12/128 主分类号 G06F12/0831
代理机构 代理人
主权项 1. A method comprising: maintaining, in a first memory, a plurality of segments, each segment including a plurality of blocks, and maintaining, in a second memory, a block temperature for each of a plurality of blocks, wherein the first memory is a read-cache memory where one segment is written at a time, wherein each block is readable from the first memory without reading the corresponding complete segment, each block temperature being based on a frequency of access to the respective block, wherein a segment temperature for each segment is based on the block temperature for the corresponding plurality of blocks within the segment; selecting a segment from a plurality of segments with a lowest segment temperature for eviction from the second memory; identifying blocks in the selected segment with a block temperature greater than a threshold temperature; evicting the selected segment from the first memory; and writing to the first memory a new segment having the identified blocks.
地址 San Jose CA US