Prolonging lifetime of non-volatile last level caches with cluster mapping

Recently, work has been done on using nonvolatile cells, such as Spin Transfer Torque RAM (STT-RAM) or Magnetic RAM (M-RAM), to construct last level caches (LLC). These structures mitigate the leakage power and density problem found in traditional SRAM cells. However, the low endurance of nonvolatile caches decreases the lifetime of the LLC. Therefore, an effective wear-leveling technique is required to tackle this issue. In this paper, we propose the inter-set algorithm that distributes the write traffic to all portions of the cache. Our method is based on cluster mapping that dynamically replaces two clusters during the operation of system. Since the inter-set algorithm is based on data movement, a large amount of data must transfer in each replacement. For an efficient data movement with a minimum effect on performance, we develop the novel scheduling technique that utilizes the idle time of the LLC in the computation phase of the processors. Our approach effectively improves the lifetime of LLC with negligible performance and area overhead. Using these methods in a quad core system with 2MB LLC, we can improve the lifetime of non-volatile LLC by 30% on average.

[1]  Yuan Xie,et al.  i2WAP: Improving non-volatile cache lifetime by reducing inter- and intra-set write variations , 2013, 2013 IEEE 19th International Symposium on High Performance Computer Architecture (HPCA).

[2]  John L. Henning SPEC CPU2006 benchmark descriptions , 2006, CARN.

[3]  David A. Wood,et al.  A Primer on Memory Consistency and Cache Coherence , 2012, Synthesis Lectures on Computer Architecture.

[4]  Dong Li,et al.  LastingNVCache: A Technique for Improving the Lifetime of Non-volatile Caches , 2014, 2014 IEEE Computer Society Annual Symposium on VLSI.

[5]  Shyamkumar Thoziyoor,et al.  CACTI 5 . 1 , 2008 .

[6]  Sudhanva Gurumurthi,et al.  Phase Change Memory: From Devices to Systems , 2011, Phase Change Memory.

[7]  Jeffrey S. Vetter,et al.  AYUSH: A Technique for Extending Lifetime of SRAM-NVM Hybrid Caches , 2015, IEEE Computer Architecture Letters.

[8]  Mohammad Arjomand,et al.  Sequoia: A High-Endurance NVM-Based Cache Architecture , 2016, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[9]  Cong Xu,et al.  NVSim: A Circuit-Level Performance, Energy, and Area Model for Emerging Nonvolatile Memory , 2012, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[10]  Sparsh Mittal Using Cache-coloring to Mitigate Inter-set Write Variation in Non-volatile Caches , 2013, ArXiv.

[11]  Yiran Chen,et al.  An overview of non-volatile memory technology and the implication for tools and architectures , 2009, 2009 Design, Automation & Test in Europe Conference & Exhibition.

[12]  William J. Bowhill,et al.  4.5 The Xeon® processor E5-2600 v3: A 22nm 18-core product family , 2015, 2015 IEEE International Solid-State Circuits Conference - (ISSCC) Digest of Technical Papers.

[13]  Jung Ho Ahn,et al.  CACTI-P: Architecture-level modeling for SRAM-based structures with advanced leakage reduction techniques , 2011, 2011 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[14]  Somayeh Sardashti,et al.  The gem5 simulator , 2011, CARN.

[15]  Mor Harchol-Balter,et al.  ATLAS : A Scalable and High-Performance Scheduling Algorithm for Multiple Memory Controllers , 2010 .

[16]  Dong Li,et al.  WriteSmoothing: improving lifetime of non-volatile caches using intra-set wear-leveling , 2014, GLSVLSI '14.

[17]  Kinam Kim,et al.  Bi-layered RRAM with unlimited endurance and extremely uniform switching , 2011, 2011 Symposium on VLSI Technology - Digest of Technical Papers.