Nothing Special   »   [go: up one dir, main page]

skip to main content
research-article

Adaptive wear-leveling algorithm for PRAM main memory with a DRAM buffer

Published: 10 March 2014 Publication History

Abstract

Phase Change RAM (PRAM) is a candidate to replace DRAM main memory due to its low idle power consumption and high scalability. However, its latency and endurance have generated problems in fulfilling its main memory role. The latency can be treated with a DRAM buffer, but the endurance problem remains, with three critical points that need to be improved despite the use of, existing wear-leveling algorithms. First, existing DRAM buffering schemes do not consider write count distribution. Second, swapping and shifting operations are performed statically. Finally, swapping and shifting operations are loosely coupled with a DRAM buffer. As a remedy to these drawbacks, we propose an adaptive wear-leveling algorithm that consists of three novel schemes for PRAM main memory with a DRAM buffer. The PRAM-aware DRAM buffering scheme reduces the write count and prevents skewed writing by considering the write count and clean data based on the least recently used (LRU) scheme. The adaptive multiple swapping and shifting scheme makes the write count even with the dynamic operation timing, the number of swapping pages being based on the workload pattern. Our DRAM buffer-aware swapping and shifting scheme reduces overhead by curbing additional swapping and shifting operations, thus reducing unnecessary write operations. To evaluate the wear-leveling effect, we have implemented a PIN-based wear-leveling simulator. The evaluation confirms that the PRAM lifetime increases from 0.68 years with the previous wear-leveling algorithm to 5.32 years with the adaptive wear-leveling algorithm.

References

[1]
Y.-H. Chang, J.-W. Hsieh, and T.-W. Kuo. 2010. Improving flash wear-leveling by proactively moving static data. IEEE Trans. Comput. 59, 1, 53--65.
[2]
S. Cho and H. Lee. 2009. Flip-N-Write: A simple deterministic technique to improve PRAM write performance, energy and endurance. In Proceedings of the 42nd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 42). 347--357.
[3]
V. Delaluz, A. Sivasubramaniam, M. T. Kandemir, N. Vijaykrishnan, and M. J. Irwin. 2002. Scheduler-based DRAM energy management. In Proceedings of the Design Automation Conference (DAC). 697--702.
[4]
G. Dhiman, R. Ayoub, and T. Rosing. 2009. PDRAM: A hybrid PRAM and DRAM main memory system. In Proceedings of the 46th Annual Design Automation Conference (DAC). 664--469.
[5]
J. Dong, L. Zhang, Y. Han, Y. Wang, and X. Li. 2011. Wear rate leveling: Lifetime enhancement of PRAM with endurance variation. In Proceedings of the Design Automation Conference (DAC). 972--977.
[6]
A. P. Ferreira, M. Zhou, S. Bock, B. Childers, R. Melhem, and D. Mossé. 2010. Increasing PCM main memory lifetime. In Proceedings of the Conference on Design, Automation and Test in Europe (DATE). 914--919.
[7]
J. Guo, J. Yang, Y. Zhang, and Y. Chen. 2013. Low cost power failure protection for MLC NAND flash storage systems with PRAM/DRAM hybrid buffer. In Proceedings of the Conference on Design, Automation and Test in Europe (DATE). 859--864.
[8]
E. Ipek, J. Condit, E. B. Nightingale, D. Burger, and T. Moscibroda. 2010. Dynamically replicated memory: Building reliable systems from nanoscale resistive memories. In Proceedings of the 15th Edition of ASPLOS on Architectural Support For Programming Languages and Operating Systems (ASPLOS).
[9]
H. Jo, J.-U. Kang, S.-Y. Park, J.-S. Kim, and J. Lee. 2006. FAB: Flash-aware buffer management policy for portable media players. IEEE Trans. Consum. Electron. 52, 2, 485--493.
[10]
J. Kong and H. Zhou. 2010. Improving privacy and lifetime of PCM-based main memory. In Proceedings of IEEE DSN. 333--342.
[11]
B. C. Lee, E. Ipek, O. Mutlu, and D. Burger. 2009. Architecting phase change memory as a scalable DRAM alternative. In Proceedings of the 36th Annual International Symposium on Computer Architecture (ISCA). 2--13.
[12]
S. Lee, D. Shin, and J. Kim. 2008. Buffer-aware garbage collection for NAND flash memory-based storage systems. In Proceedings of the International Workshop on Software Support for Portable Storage (IWSSPS).
[13]
C.-K. Luk, R. Cohn, R. Muth, H. Patil, A. Klauser, G. Lowney, S. Wallace, V. J. Reddi, and K. Hazelwood. 2005. PIN: Building customized program analysis tools with dynamic instrumentation. In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI). 190--200.
[14]
Y. Ou, T. Härder, and P. Jin. 2009. CFDC: A flash-aware replacement policy for database buffer management. In Proceedings of the Fifth International Workshop on Data Management on New Hardware (DaMoN). 15--20.
[15]
H. Park, S. Yoo, and S. Lee. 2011a. Power management of hybrid DRAM/PRAM-based main memory. In Proceedings of the 48th Design Automation Conference (DAC). 59--64.
[16]
S. K. Park, H. Seok, D.-J. Shin, and K. H. Park. 2012. PRAM wear-leveling algorithm for hybrid main memory based on data buffering, swapping, and shifting. In Proceedings of the 27th Annual ACM Symposium on Applied Computing (SAC). 1643--1644.
[17]
S.-Y. Park, D. Jung, J.-U. Kang, J.-S. Ki M, and J. Lee. 2006. CFLRU: A replacement algorithm for flash memory. In Proceedings of the International Conference on Compilers, Architecture, and Synthesis for Embedded Systems (CASES). 234--241.
[18]
Y. Park, S.-H. Lim, C. Lee, and K. H. Park. 2008. PFFS: A scalable flash memory file system for the hybrid architecture of phase-change RAM and NAND flash. In Proceedings of the ACM Symposium on Applied Computing (SAC). 1498--1503.
[19]
Y. Park, S. K. Park, and K. H. Park. 2010. Linux kernel support to exploit phase change memory. In Proceedings of the 12th Annual Linux Symposium (LS).
[20]
Y. Park, D.-J. Shin, S. K. Park, and K. H. Park. 2011b. Power-aware memory management for hybrid main memory. In Proceedings of the 2nd International Conference on Next Generation Information Technology (ICNIT). 82--85.
[21]
M. K. Qureshi, M. Franceschini, and L. A. Lastras-Montano. 2010. Improving read performance of phase change memories via write cancellation and write pausing. In Proceedings of IEEE HPCA. 1--11.
[22]
M. K. Qureshi, J. Karidis, M. Franceschini, V. Srinivasan, L. Lastras, and B. Abali. 2009a. Enhancing lifetime and security of PCM-based main memory with start-gap wear leveling. In Proceedings of the 42nd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO). 14--23.
[23]
M. K. Qureshi, V. Srinivasan, and J. A. Rivers. 2009b. Scalable high performance main memory system using phase-change memory technology. In Proceedings of the 36th Annual International Symposium on Computer Architecture (ISCA). 24--33.
[24]
L. E. Ramos, E. Gorbatov, and R. Bianchini. 2011. Page placement in hybrid memory systems. In Proceedings of the International Conference on Supercomputing (ICS). 85--95.
[25]
D. Roberts, T. Kgil, and T. Mudge. 2009. Using non-volatile memory to save energy in servers. In Proceedings of the Conference on Design, Automation and Test in Europe (DATE). 743--748.
[26]
A. Seznec. 2010. A phase change memory as a secure main memory. Comput. Arch. Lett. 9, 1, 5--8.
[27]
B. Wongchaowart, M. Iskander, and S. Cho. 2010. A content-aware block placement algorithm for reducing PRAM storage bit writes. In Proceedings of IEEE 26th Symposium on Mass Storage Systems and Technologies (MSST). 1--11.
[28]
B.-D. Yang, J.-E. Lee, J.-S. Kim, J. Cho, S.-Y. Lee, and B.-G. Yu. 2007. A low power phase-change random access memory using a data-comparison write scheme. In Proceedings of IEEE ISCAS. 3014--3017.
[29]
N. Ye, Q. Chen, and C. M. Borror. 2004. EWMA forecast of normal system activity for computer intrusion detection. IEEE Trans. Rel. 53, 4, 557--566.
[30]
W. Zhang and T. Li. 2009. Characterizing and mitigating the impact of process variations on phase change based memory systems. In Proceedings of the 42nd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 42). 2--13.
[31]
P. Zhou, B. Zhao, J. Yang, and Y. Zhang. 2009. A durable and energy effcient main memory using phase change memory technology. In Proceedings of the 36th Annual International Symposium on Computer Architecture (ISCA). 14--23.

Cited By

View all
  • (2019)Efficient Wear Leveling for PCM/DRAM-Based Hybrid Memory2019 IEEE 21st International Conference on High Performance Computing and Communications; IEEE 17th International Conference on Smart City; IEEE 5th International Conference on Data Science and Systems (HPCC/SmartCity/DSS)10.1109/HPCC/SmartCity/DSS.2019.00273(1979-1986)Online publication date: Aug-2019
  • (2019)Active Data Replica Recovery for Quality-Assurance Big Data Analysis in IC-IoTIEEE Access10.1109/ACCESS.2019.29322597(106997-107005)Online publication date: 2019
  • (2019)VAIL: A Victim-Aware Cache Policy to Improve NVM Lifetime for Hybrid Memory SystemParallel Computing10.1016/j.parco.2018.12.005Online publication date: May-2019
  • Show More Cited By

Index Terms

  1. Adaptive wear-leveling algorithm for PRAM main memory with a DRAM buffer

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM Transactions on Embedded Computing Systems
    ACM Transactions on Embedded Computing Systems  Volume 13, Issue 4
    Regular Papers
    November 2014
    647 pages
    ISSN:1539-9087
    EISSN:1558-3465
    DOI:10.1145/2592905
    Issue’s Table of Contents
    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].

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Journal Family

    Publication History

    Published: 10 March 2014
    Accepted: 01 November 2013
    Revised: 01 September 2013
    Received: 01 December 2012
    Published in TECS Volume 13, Issue 4

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. Adaptive wear-leveling
    2. DRAM buffering
    3. PIN-based simulator
    4. PRAM main memory
    5. swapping and shifting

    Qualifiers

    • Research-article
    • Research
    • Refereed

    Funding Sources

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)14
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 10 Nov 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2019)Efficient Wear Leveling for PCM/DRAM-Based Hybrid Memory2019 IEEE 21st International Conference on High Performance Computing and Communications; IEEE 17th International Conference on Smart City; IEEE 5th International Conference on Data Science and Systems (HPCC/SmartCity/DSS)10.1109/HPCC/SmartCity/DSS.2019.00273(1979-1986)Online publication date: Aug-2019
    • (2019)Active Data Replica Recovery for Quality-Assurance Big Data Analysis in IC-IoTIEEE Access10.1109/ACCESS.2019.29322597(106997-107005)Online publication date: 2019
    • (2019)VAIL: A Victim-Aware Cache Policy to Improve NVM Lifetime for Hybrid Memory SystemParallel Computing10.1016/j.parco.2018.12.005Online publication date: May-2019
    • (2019)Hotness-aware page partition management methodNeural Computing and Applications10.1007/s00521-018-3668-x31:1(133-146)Online publication date: 1-Jan-2019
    • (2018)VAILProceedings of the 9th International Workshop on Programming Models and Applications for Multicores and Manycores10.1145/3178442.3178451(79-84)Online publication date: 24-Feb-2018
    • (2017)State Asymmetry Driven State Remapping in Phase Change MemoryIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2016.256140836:1(27-40)Online publication date: 1-Jan-2017
    • (2015)Efficient Space Management and Wear Leveling for PCM-Based Storage SystemsAlgorithms and Architectures for Parallel Processing10.1007/978-3-319-27140-8_54(784-798)Online publication date: 16-Dec-2015
    • (2014)A Reliability-Aware Address Mapping Strategy for NAND Flash Memory Storage SystemsIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2014.234792933:11(1623-1631)Online publication date: Nov-2014

    View Options

    Get Access

    Login options

    Full Access

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media