AMC an adaptive multilevel cache algorithm in hybrid
AMC: an adaptive multi-level cache algorithm in hybrid storage systems
OUTLINE • • • INTRODUCTION BACKROUND & MOTIVATION AMC DESIGN EVALUATION CONCLUSION
INTRODUCTION(1/3) • There are two-level hybrid-caching systems that exist today with DRAM as the first level cache and SSD as the second level cache for the slower HDD storage. • The hybrid storage systems (DRAM–SSD–HDD) take advantage of the SSD features – low cost/gigabyte and non-volatility compared to DRAM – low access latency compared to HDD.
INTRODUCTION(2/3) • The DRAM and SSD cache levels are managed independently. • The level-independent cache management in multi-level cache systems faces two major drawbacks: – Weakened locality in the second level cache. – Data redundancy.
INTRODUCTION(3/3) • We propose a novel adaptive multi-level cache (AMC) replacement algorithm. • The AMC algorithm uses selective promote and demote operations to – dynamically determine the level in which the blocks are to be cached. – By adding the ’selective’ property into the promote operation, AMC accumulates more cache hits in DRAM. – By adding the ’selective’ property into the demote operation, AMC evicts less useful blocks to increase SSD lifetime.
OUTLINE • • • INTRODUCTION BACKROUND & MOTIVATION AMC DESIGN EVALUATION CONCLUSION
BACKROUND & MOTIVATION(1/3) Two operations used in multi-level cache hierarchies to achieve exclusivity. The promote operation is used when a block miss occurs in the L 1 cache. The missed block may be cached in the L 2 cache or may reside in the HDD. The demote operation is used when the L 1 cache is full and needs to replace the LRU block in the L 1 list for the new most recently used (MRU) block.
BACKROUND & MOTIVATION(2/3) • Two major problems in the traditional exclusive caching algorithm – All block misses incur promote operations, which may cause some older but ’hot’ blocks cached in L 1 to be evicted – Each block evicted from the L 1 cache is demoted into the L 2 cache, this will cause a large number of write allocations in the SSD cache.
BACKROUND & MOTIVATION(3/3) • The key idea of AMC is to determine the appropriate level in which new blocks will be cached and the level from which old blocks will be evicted. – Selective promote/demote – Adaptive probability – Temp cache and ghost cache
OUTLINE • • • INTRODUCTION BACKROUND & MOTIVATION AMC DESIGN EVALUATION CONCLUSION
AMC DESIGN(1/8)
AMC DESIGN(2/8) •
AMC DESIGN(3/8) Reference to the block X When a new block request arrives: yes no no yes yes no no Selective_promote(X )
AMC DESIGN(4/8) selective_promote(X) False true Delete LRU block X’ in L 1 list X’ put into L 2 list true False X put into L 1 list
AMC DESIGN(5/8) Update_probability() life time : current time - the time the block last accessed. 8 6 3 7 5 8 6 11 20
AMC DESIGN(6/8) Update_probability()
AMC DESIGN(7/8) selective_promote(X) False true Delete LRU block X’ in L 1 list X’ put into L 2 list true False X put into L 1 list
AMC DESIGN(8/8) •
OUTLINE • • • INTRODUCTION BACKROUND & MOTIVATION AMC DESIGN EVALUATION CONCLUSION
EVALUATION(1/6) • ind-LRU is a two-level independent LRU algorithm. • exc-LRU is a two-level exclusive LRU algorithm. • 2 C-LRU is a one-level LRU algorithm whose cache size equals the aggregate size of two level caches. – 2 C-LRU only uses the DRAM cache.
EVALUATION(2/6) Average response time
EVALUATION(3/6) SSD lifetime
EVALUATION(4/6) Hit ratio
EVALUATION(5/6) Selective promote/demote
EVALUATION(6/6)
OUTLINE • • • INTRODUCTION BACKROUND & MOTIVATION AMC DESIGN EVALUATION CONCLUSION
CONCLUSION(1/1) • We have presented a novel multi-level hybrid cache algorithm that can adaptively keep ’hot’ data blocks in DRAM and SSD caches. • By using real-life storage traces, our evaluation shows the proposed AMC algorithm reduces average response time by up to 25% and increases SSD lifetime by up to 4. 12 times compared with traditional multi-level cache replacement algorithms.
- Slides: 27