TBuffer: Constructing a Tail Buffer in DRAM for Flash-Based Main Memory System

Zhengguo Chen,Nong Xiao,Fang Liu,Zhiguang Chen,Wei Chen,Yuxuan Xing
DOI: https://doi.org/10.1109/hpcc-smartcity-dss.2016.0048
2016-01-01
Abstract:The Ultra-DIMM constituted by DRAM and Flash memory is a promising solution used to tackle the challenges existing in traditional DRAM in terms of energy consuming and scalability. In this hybrid memory system, DRAM is used as the data buffer of Flash memory due to the performance and endurance gaps between main memory and Flash. However, the inconsistency of access granularity between the main memory and Flash makes the DRAM-based buffer complex. On the one hand, the basic access unit of Flash is page. However, buffering pages of Flash in DRAM without distinguishing the hot cache lines from cold cache lines within each page leads to a waste of cache capacity. On the other hand, general-purpose replacement schemes focus on high hit rate and do not consider the peculiarities of Flash, thus leads to performance and lifespan overhead. In this paper, we propose TBuffer, an additional buffer in DRAM enhanced by history-aware identification and LazyFlush. History-aware identification can increase hit rate by evicting cold cache lines and keeping more hot cache lines in DRAM, while LazyFlush can further improve performance and lifespan by delaying flushing dirty objects and reducing writes to Flash. We evaluate the TBuffer via trace-driven simulations. Experimental results have shown that it outperforms other existing schemes, increases hit rate by up to 12%, reduces the access latency by a factor of up to 50.8% with an average of 19.7%, and achieves 16.6% lifespan improvement on average.
What problem does this paper attempt to address?