skip to main content
10.1145/2541940.2541957acmconferencesArticle/Chapter ViewAbstractPublication PagesasplosConference Proceedingsconference-collections
research-article

NVM duet: unified working memory and persistent store architecture

Published: 24 February 2014 Publication History

Abstract

Emerging non-volatile memory (NVM) technologies have gained a lot of attention recently. The byte-addressability and high density of NVM enable computer architects to build large-scale main memory systems. NVM has also been shown to be a promising alternative to conventional persistent store. With NVM, programmers can persistently retain in-memory data structures without writing them to disk. Therefore, one can envision that in the future, NVM will play the role of both working memory and persistent store at the same time.
Persistent store demands consistency and durability guarantees, thereby imposing new design constraints on the memory system. Consistency is achieved at the expense of serializing multiple write operations. Durability requires memory cells to guarantee non-volatility and thus reduces the write speed. Therefore, a unified architecture oblivious to these two use cases would lead to suboptimal design. In this paper, we propose a novel unified working memory and persistent store architecture, NVM Duet, which provides the required consistency and durability guarantees for persistent store while relaxing these constraints if accesses to NVM are for working memory. A cross-layer design approach is adopted to achieve the design goal. Overall, simulation results demonstrate that NVM Duet achieves up to 1.68x (1.32x on average) speedup compared with the baseline design.

References

[1]
SNIA non volatile memory (NVM) programming technical work group (TWG). http://snia.org/forums/sssi/nvmp.
[2]
JESD218A: Solid-state drive (SSD) requirements and endurance test method, Feb. 2011.
[3]
Process integration, devices, and structures (PIDS). Technical report, ITRS, 2012.
[4]
M. Awasthi, M. Shevgoor, K. Sudan, R. Balasubramonian, B. Rajendran, and V. Srinivasan. Handling PCM resistance drift with device, circuit, architecture, and system solutions. In NVMW, 2011.
[5]
M. Awasthi, M. Shevgoor, K. Sudan, B. Rajendran, R. Balasubramonian, and V. Srinivasan. Efficient scrub mechanisms for error-prone emerging memories. In HPCA, 2012.
[6]
R. Azevedo, J. D. Davis, K. Strauss, P. Gopalan, M. Manasse, and S. Yekhanin. Zombie memory: Extending memory lifetime by reviving dead blocks. In ISCA, 2013.
[7]
K. Bailey, L. Ceze, S. D. Gribble, and H. M. Levy. Operating system implications of fast, cheap, non-volatile memory. In HotOS, 2011.
[8]
F. Bedeschi, R. Fackenthal, C. Resta, E. Donze, M. Jagasivamani, E. Buda F. Pellizzer, D. Chow, A. Cabrini, G. Calvi, R. Faravelli, A. Fantini, G. Torelli, D. Mills, R. Gastaldi, and G. Casagrande. A multi-level-cell bipolar-selected phase-change memory. In ISSCC, 2008.
[9]
F. Bedeschi, R. Fackenthal, C. Resta, E. Donze, M. Jagasivamani, E. Buda, F. Pellizzer, D. Chow, A. Cabrini, G. Calvi, R. Faravelli, A. Fantini, G. Torelli, D. Mills, R. Gastaldi, and G. Casagrande. A bipolar-selected phase change memory featuring multi-level cell storage. IEEE J. Solid-St. Circ., 44(1):217--227, 2009.
[10]
F. Bellard. QEMU, a fast and portable dynamic translator. In USENIX ATC, 2005.
[11]
Y. Cai, G. Yalcin, O. Mutlu, E. F. Haratsch, A. Cristal, O. S. Unsal, and K. Mai. Flash correct-and-refresh: Retention-aware error management for increased flash memory lifetime. In ICCD, 2012.
[12]
A. M. Caulfield, A. De, J. Coburn, T. I. Mollow, R. K. Gupta, and S. Swanson. Moneta: A high-performance storage array architecture for next-generation, non-volatile memories. In MICRO, 2010.
[13]
A. M. Caulfield, T. I. Mollov, L. A. Eisner, A. De, J. Coburn, and S. Swanson. Providing safe, user space access to fast, solid state disks. In ASPLOS, 2012.
[14]
J. Chang, P. Ranganathan, T. Mudge, D. Roberts, M. A. Shah, and K. T. Lim. A limits study of benefits from nanostore-based future data-centric system architectures. In CF, 2012.
[15]
S. Cho and H. Lee. Flip-N-Write: A simple deterministic technique to improve PRAM write performance, energy and endurance. In MICRO, 2009.
[16]
Y. Choi, I. Song, M.-H. Park, H. Chung, S. Chang, B. Cho, J. Kim, Y. Oh, D. Kwon, J. Sunwoo, J. Shin, Y. Rho, C. Lee, M. G. Kang, J. Lee, Y. Kwon, S. Kim, J. Kim, Y.-J. Lee, Q. Wang, S. Cha, S. Ahn, H. Horii, J. Lee, K. Kim, H. Joo, K. Lee, Y.-T. Lee, J. Yoo, and G. Jeong. A 20nm 1.8V 8Gb PRAM with 40MB/s program bandwidth. In ISSCC, 2012.
[17]
G. F. Close, U. Frey, J. Morrish, R. Jordan, S. Lewis, T. Maffitt, M. Breitwisch, C. Hagleitner, C. Lam, and E. Eleftheriou. A 512Mb phase-change memory (PCM) in 90nm CMOS achieving 2b/cell. In VLSIC, 2011.
[18]
J. Coburn, A. M. Caulfield, A. Akel, L. M. Grupp, R. K. Gupta, R. Jhala, and S. Swanson. NV-heaps: Making persistent objects fast and safe with next-generation, non-volatile memories. In ASPLOS, 2011.
[19]
J. Condit, E. B. Nightingale, C. Frost, E. Ipek, B. Lee, D. Burger, and D. Coetzee. Better I/O through byte-addressable, persistent memory. In SOSP, 2009.
[20]
J. Fan, S. Jiang, J. Shu, Y. Zhang, and W. Zhen. Aegis: Partitioning data block for efficient recovery of stuck-at-faults in phase change memory. In MICRO, 2013.
[21]
M. Ghosh and H.-H. S. Lee. Smart refresh: An enhanced memory controller design for reducing energy in conventional and 3D diestacked DRAMs. In MICRO, 2007. .
[22]
T. Happ and J. B. Philipp. Resistive memory including selective refresh operation. U.S. Patent Application No. 2008/0117704 A1, 2008.
[23]
A. Hay, K. Strauss, T. Sherwood, G. H. Loh, and D. Burger. Preventing PCM banks from seizing too much power. In MICRO, 2011.
[24]
E. Ipek, J. Condit, E. B. Nightingale, D. Burger, and T. Moscibroda. Dynamically replicated memory: Building reliable systems from nanoscale resistive memories. In ASPLOS, 2010.
[25]
L. Jiang, Y. Zhang, B. R. Childers, and J. Yang. FPB: Fine-grained power budgeting to improve write throughput of multi-level cell phase change memory. In MICRO, 2012.
[26]
L. Jiang, B. Zhao, Y. Zhang, J. Yang, and B. R. Childers. Improving write operations in MLC phase change memory. In HPCA, 2012.
[27]
A. Jog, A. K. Mishra, C. Xu, Y. Xie, V. Narayanan, R. Iyer, and C. R. Das. Cache revive: Architecting volatile STT-RAM caches for enhanced performance in CMPs. In DAC, 2012.
[28]
J.-Y. Jung and S. Cho. Memorage: Emerging persistent RAM based malleable main memory and storage architecture. In ICS, 2013.
[29]
D.-H. Kang, J.-H. Lee, J. Kong, D. Ha, J. Yu, C. Um, J. Park, F. Yeung, J. Kim, W. Park, Y. Jeon, M. Lee, Y. Song, J. Oh, G. Jeong, and H. Jeong. Two-bit cell operation in diode-switch phase change memory cells with 90nm technology. In 2008 Symposium on VLSI Technology, 2008. .
[30]
Y. Kim, V. Seshadri, D. Lee, J. Liu, and O. Mutlu. A case for exploiting subarray-level parallelism (SALP) in DRAM. In ISCA, 2012.
[31]
E. Kultursay, M. Kandemir, A. Sivasubramaniam, and O. Mutlu. Evaluating STT-RAM as an energy-efficient main memory alternative. In ISPASS, 2013.
[32]
B. C. Lee, E. Ipek, O. Mutlu, and D. Burger. Architecting phase change memory as a scalable DRAM alternative. In ISCA, 2009.
[33]
C.-H. Lin, D.-Y. Shen, Y.-J. Chen, C.-L. Yang, and M. Wang. SECRET: Selective error correction for refresh energy reduction in DRAMs. In ICCD, 2012.
[34]
J. Liu, B. Jaiyen, R. Veras, and O. Mutlu. RAIDR: Retention-aware intelligent DRAM refresh. In ISCA, 2012.
[35]
J. Liu, B. Jaiyen, Y. Kim, C. Wilkerson, and O. Mutlu. An experimental study of data retention behavior in modern DRAM devices: Implications for retention time profiling mechanisms. In ISCA, 2013.
[36]
R.-S. Liu, C.-L. Yang, and W. Wu. Optimizing NAND flash-based SSDs via retention relaxation. In FAST, 2012.
[37]
R.-S. Liu, C.-L. Yang, C.-H. Li, and G.-Y. Chen. DuraCache: A durable SSD cache using MLC NAND flash. In DAC, 2013.
[38]
H.-L. Lung. Refresh circuitry for phase change memory. U.S. Patent Application No. 2011/0013446 A1, 2011.
[39]
V. Mohan, S. Sankar, and S. Gurumurthi. reFresh SSDs: Enabling high endurance, low cost flash in datacenters. Technical Report CS- 2012-05, University of Virginia, 2012. Presented at FMS '12.
[40]
I. Moraru, D. Andersen, M. Kaminsky, P. Ranganathan, N. Tolia, and N. Binkert. From filesystem designer to persistent data structure designer: Enabling safe memory management for byte-addressable NVRAM. In NVMW, 2013.
[41]
I. Moraru, D. G. Andersen, M. Kaminsky, N. Tolia, P. Ranganathan, and N. Binkert. Consistent, durable, and safe memory management for byte-addressable non volatile main memory. In TRIOS, 2013.
[42]
A. Nigam, C. W. Smullen, V. Mohan, E. Chen, S. Gurumurthi, and M. R. Stan. Delivering on the promise of universal memory for spintransfer torque RAM (STT-RAM). In ISLPED, 2011.
[43]
T. Nirschl, J. B. Philipp, T. D. Happ, G. W. Burr, B. Rajendran, M.-H. Lee, A. Schrott, M. Yang, M. Breitwisch, C.-F. Chen, E. Joseph, M. Lamorey, R. Cheek, S.-H. Chen, S. Zaidi, S. Raoux, Y. Chen, Y. Zhu, R. Bergmann, H.-L. Lung, and C. Lam. Write strategies for 2 and 4-bit multi-level phase-change memory. In IEDM, 2007.
[44]
S. Oikawa. Integrating memory management with a file system on a non-volatile main memory system. In SAC, 2013.
[45]
Y. Pan, G. Dong, Q. Wu, and T. Zhang. Quasi-nonvolatile SSD: Trading flash memory nonvolatility to improve storage system performance for enterprise applications. In HPCA, 2012.
[46]
W. D. Parkinson and T. A. Lowrey. Refreshing memory cells of a phase change material memory device. U.S. Patent Application No. 2004/0022085 A1, 2004.
[47]
A. Patel, F. Afram, S. Chen, and K. Ghose. MARSS: A full system simulator for multicore x86 CPUs. In DAC, 2011.
[48]
M. K. Qureshi. Pay-as-you-go: Low-overhead hard-error correction for phase change memories. In MICRO, 2011.
[49]
M. K. Qureshi, J. Karidis, and M. Franceschini. Enhancing lifetime and security of PCM-based main memory with start-gap wear leveling. In MICRO, 2009.
[50]
M. K. Qureshi, V. Srinivasan, and J. A. Rivers. Scalable high performance main memory system using phase-change memory technology. In ISCA, 2009.
[51]
M. K. Qureshi, M. M. Franceschini, and L. A. Lastras-Montano. Improving read performance of phase change memories via write cancellation and write pausing. In HPCA, 2010.
[52]
M. K. Qureshi, A. Seznec, L. A. Lastras, and M. M. Franceschini. Practical and secure PCM systems by online detection of malicious write streams. In HPCA, 2011.
[53]
M. K. Qureshi, M. M. Franceschini, A. Jagmohan, and L. A. Lastras. PreSET: Improving performance of phase change memories by exploiting asymmetry in write times. In ISCA, 2012.
[54]
P. Ranganathan. From microprocessors to nanostores: Rethinking data-centric systems. Computer, 44(1):39--48, 2011.
[55]
S. Raoux, G. W. Burr, M. J. Breitwisch, C. T. Rettner, Y.-C. Chen, R. M. Shelby, M. Salinga, D. Krebs, S.-H. Chen, H.-L. Lung, and C. H. Lam. Phase-change random access memory: A scalable technology. IBM J. Res. Dev., 52(4):465--479, July 2008.
[56]
P. Rosenfeld, E. Cooper-Balis, and B. Jacob. DRAMSim2: A cycle accurate memory system simulator. IEEE Comput. Archit. Lett., 10 (1):16 --19, 2011.
[57]
A. Sampson, J. Nelson, K. Strauss, and L. Ceze. Approximate storage in solid-state memories. In MICRO, 2013.
[58]
S. Schechter, G. H. Loh, K. Straus, and D. Burger. Use ECP, not ECC, for hard failures in resistive memories. In ISCA, 2010.
[59]
N. H. Seong, D. H. Woo, and H.-H. S. Lee. Security Refresh: Prevent malicious wear-out and increase durability for phase-change memory with dynamically randomized address mapping. In ISCA, 2010. .
[60]
N. H. Seong, D. H. Woo, V. Srinivasan, J. A. Rivers, and H.-H. S. Lee. SAFER: Stuck-at-fault error recovery for memories. In MICRO, 2010.
[61]
N. H. Seong, S. Yeo, and H.-H. S. Lee. Tri-level-cell phase change memory: Toward an efficient and reliable memory system. In ISCA, 2013.
[62]
C. W. Smullen, V. Mohan, A. Nigam, S. Gurumurthi, and M. R. Stan. Relaxing non-volatility for fast and energy-efficient STT-RAM caches. In HPCA, 2011.
[63]
Z. Sun, X. Bi, H. H. Li, W.-F. Wong, Z.-L. Ong, X. Zhu, and W. Wu. Multi retention level STT-RAM cache designs with a dynamic refresh scheme. In MICRO, 2011.
[64]
S. Venkataraman, N. Tolia, P. Ranganathan, and R. H. Campbell. Consistent and durable data structures for non-volatile byte-addressable memory. In FAST, 2011.
[65]
H. Volos, A. J. Tack, and M. M. Swift. Mnemosyne: Lightweight persistent memory. In ASPLOS, 2011.
[66]
H. Volos, S. Panneerselvam, S. Nalli, and M. M. Swift. Storage-class memory needs flexible interfaces. In APSys, 2013.
[67]
X. Wu and A. L. N. Reddy. SCMFS: A file system for storage class memory. In SC, 2011.
[68]
W. Xu and T. Zhang. Using time-aware memory sensing to address resistance drift issue in multi-level phase change memory. In ISQED, 2010.
[69]
S. Yeo, N. H. Seong, and H.-H. S. Lee. Can multi-level cell PCM be reliable and usable? Analyzing the impact of resistance drift. In WDDD, 2012.
[70]
D. H. Yoon, N. Muralimanohar, J. Chang, P. Ranganathan, N. P. Jouppi, and M. Erez. FREE-p: Protecting non-volatile memory against both hard and soft errorss. In HPCA, 2011.
[71]
M. T. Yourst. PTLsim: A cycle accurate full system x86--64 microarchitectural simulator. In ISPASS, 2007.
[72]
J. Yue and Y. Zhu. Accelerating write by exploiting PCM asymmetries. In HPCA, 2013.
[73]
W. Zhang and T. Li. Helmet: A resistance drift resilient architecture for multi-level cell phase change memory system. In DSN, 2011.
[74]
P. Zhou, B. Zhao, J. Yang, and Y. Zhang. A durable and energy efficient main memory using phase change memory technology. In ISCA, 2009.

Cited By

View all
  • (2024)Hercules: Enabling Atomic Durability for Persistent Memory with Transient Persistence DomainACM Transactions on Embedded Computing Systems10.1145/360747323:6(1-34)Online publication date: 11-Sep-2024
  • (2022)Planting Fast-Growing Forest by Leveraging the Asymmetric Read/Write Latency of NVRAM-Based SystemsIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2021.312668041:10(3304-3317)Online publication date: Oct-2022
  • (2022)Circ-Tree: A B+-Tree Variant With Circular Design for Persistent MemoryIEEE Transactions on Computers10.1109/TC.2020.304797271:2(296-308)Online publication date: 1-Feb-2022
  • Show More Cited By

Index Terms

  1. NVM duet: unified working memory and persistent store architecture

      Recommendations

      Comments

      Information & Contributors

      Information

      Published In

      cover image ACM Conferences
      ASPLOS '14: Proceedings of the 19th international conference on Architectural support for programming languages and operating systems
      February 2014
      780 pages
      ISBN:9781450323055
      DOI:10.1145/2541940
      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

      Sponsors

      In-Cooperation

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      Published: 24 February 2014

      Permissions

      Request permissions for this article.

      Check for updates

      Author Tags

      1. consistency
      2. durability
      3. memory management
      4. memory scheduler
      5. non-volatile memory
      6. phase-change memory
      7. refresh
      8. resistance distribution
      9. resistance drift
      10. storage-class memory

      Qualifiers

      • Research-article

      Conference

      ASPLOS '14

      Acceptance Rates

      ASPLOS '14 Paper Acceptance Rate 49 of 217 submissions, 23%;
      Overall Acceptance Rate 535 of 2,713 submissions, 20%

      Upcoming Conference

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • Downloads (Last 12 months)58
      • Downloads (Last 6 weeks)4
      Reflects downloads up to 27 Feb 2025

      Other Metrics

      Citations

      Cited By

      View all
      • (2024)Hercules: Enabling Atomic Durability for Persistent Memory with Transient Persistence DomainACM Transactions on Embedded Computing Systems10.1145/360747323:6(1-34)Online publication date: 11-Sep-2024
      • (2022)Planting Fast-Growing Forest by Leveraging the Asymmetric Read/Write Latency of NVRAM-Based SystemsIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2021.312668041:10(3304-3317)Online publication date: Oct-2022
      • (2022)Circ-Tree: A B+-Tree Variant With Circular Design for Persistent MemoryIEEE Transactions on Computers10.1109/TC.2020.304797271:2(296-308)Online publication date: 1-Feb-2022
      • (2021)Future Computing Platform Design: A Cross-Layer Design Approach2021 Design, Automation & Test in Europe Conference & Exhibition (DATE)10.23919/DATE51398.2021.9474229(312-317)Online publication date: 1-Feb-2021
      • (2021)A Survey of Non-Volatile Main Memory Technologies: State-of-the-Arts, Practices, and Future DirectionsJournal of Computer Science and Technology10.1007/s11390-020-0780-z36:1(4-32)Online publication date: 30-Jan-2021
      • (2020)Crab-treeACM Transactions on Embedded Computing Systems10.1145/339623619:5(1-26)Online publication date: 26-Sep-2020
      • (2020)How to cultivate a green decision tree without loss of accuracy?Proceedings of the ACM/IEEE International Symposium on Low Power Electronics and Design10.1145/3370748.3406566(1-6)Online publication date: 10-Aug-2020
      • (2020)NVDIMM-C: A Byte-Addressable Non-Volatile Memory Module for Compatibility with Standard DDR Memory Interfaces2020 IEEE International Symposium on High Performance Computer Architecture (HPCA)10.1109/HPCA47549.2020.00048(502-514)Online publication date: Feb-2020
      • (2020)Pattern analysis based data management method and memory-disk integrated system for high performance computingFuture Generation Computer Systems10.1016/j.future.2020.01.013Online publication date: Jan-2020
      • (2019)Software wear management for persistent memoriesProceedings of the 17th USENIX Conference on File and Storage Technologies10.5555/3323298.3323303(45-63)Online publication date: 25-Feb-2019
      • Show More Cited By

      View Options

      Login options

      View options

      PDF

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Figures

      Tables

      Media

      Share

      Share

      Share this Publication link

      Share on social media