An efficient low aggressiveness portion (ELAP) cache replacement policy for systems with non-volatile main memory
摘要
Non-Volatile Memory (NVM) technologies are anticipated to be included in future systems, resulting in having a Non-Volatile Main Memory (NVMM). This is due to NVM’s attractive features. However, NVM suffers from some important drawbacks. One of the most important drawbacks we will focus on in this paper is that NVM has limited endurance, which can effectively impact the memory’s expected lifetime. Several approaches were investigated to mitigate this write-endurance problem (e.g. wear-leveling, writes compression). One approach we will focus on in this paper, which can be used alongside other approaches to address this write endurance problem, is proposing modifications to the Last Level Cache (LLC) since it is the main source for NVMM writes. These modifications can affect the LLC structure by reducing the number of writes (Structural approaches) or modifying the eviction behavior at the LLC (Behavioral approaches). In this paper, we propose our Efficient Low Aggressiveness Portion (ELAP) cache replacement policy. It is a replacement policy that combines the best of the two worlds and relies on both approaches (structural and behavioral). We evaluated ELAP and compared it to the LRU replacement policy and some of the state-of-the-art schemes on a wide range of workloads from different benchmark suites. On average, ELAP reduces 25% (up to 55%) of the number of NVMM writes in the base system (i.e. compared to LRU) while incurring negligible performance overhead. This makes our approach more effective than the state-of-the-art in reducing the number of NVMM writes (by 10.79% and 8.17% compared to structural and behavioral approaches, respectively).