Computer Science ›› 2018, Vol. 45 ›› Issue (7): 78-83.doi: 10.11896/j.issn.1002-137X.2018.07.012

• NCIS 2017 • Previous Articles     Next Articles

NMST:A Persistent Memory Management Optimization Approach Based on Segment Tree

HOU Ze-yi1,WAN Hu1,XU Yuan-chao1,2   

  1. College of Information Engineering,Capital Normal University,Beijing 100048,China1;
    State Key Laboratory of Computer Architecture,Institute of Computing Technology,Chinese Academy of Sciences,Beijing 100190,China2
  • Received:2017-07-29 Online:2018-07-30 Published:2018-07-30

Abstract: The emergence of non-volatile memory (NVM) has led to the innovation of the programming model.The exi-sting programming models based on function library provide ACID characteristics to solve the problem of data consistency for memory system.However,they introduce huge overhead when allocating persistent memory dynamically,thereby degrading the applications’ performance.In this paper,an optimization approach based on segment tree was proposed to speedup persistent memory allocation and management.NMST targets NVM Library (NVML),namely a representative library programming model.Furthermore,an optimized NMST was proposedto mitigate the huge overhead of segment tree in maintaining continuous space by constructing segment tree with multi-granularity leaf nodes.The experimental results show that NMST reduces the latency by 36.9% compared with traditional methods when allocating persistent memory,and the optimized NMST reduces the latency by 43.6%.The results also demonstrate that performance improvement is closely related to the quantity and granularity of persistent memory allocation in programs.

Key words: Non-volatile memory, Persistent memory management, Programming model, Segment tree

CLC Number: 

  • TP391
[1]WONG H S P,RAOUX S,KIM S B,et al.Phase Change Memory [J].Proceedings of the IEEE,2010,98(12):2201-2227.
[2]APALKOV D,KHVALKOVSKIY A,WATTS S,et al.Spin-transfer torque magnetic random access memory (STT-MRAM) [J].ACM Journal on Emerging Technologies in Computing Systems,2013,9(2):13.
[3]LEE C B,KIM C J,LEE D S.Resistive random access memory:US,US 20090302315 A1 [P].2009.
[4]Intel and Micron.Intel and micron produce breakthrough memory technology[EB/OL].(2015-07-28)[2017-02-01].https://newsroom.intel.com/news -releases/intel-and-micron-produce-breakthrough-memory-technology.
[5]JIANG T,ZHANG Q,HOU R,et al.Understanding the beha-vior of in-memory computing workloads[C]∥IEEE International Symposium on Workload Characterization.IEEE,2014:22-30.
[6]NALLI S,HARIA S,HILL M D,et al.An analysis of persistent memory use with WHISPER[C]∥Proceedings of the 22nd International Conference on Architectural Support for Programming Languages and Operating Systems.ACM,2017:135-148.
[7]Intel.NVML:Non-volatile memory library[EB/OL].[2017-02-01].https://github.com/pmem/nvml.
[8]VENKATARAMAN S,TOLIA N,RANGANATHAN P,et al.Consistent and durable data structures for non-volatile byte-addressable memory[C]∥Proceedings of the 9th USENIX Conference on File and Storage Technologies.2011:61-75.
[9]YANG J,WEI Q,CHEN C,et al.Nv-tree:reducing consistency cost for nvm-based single level systems[C]∥Proceedings of the 13th USENIX Conference on File and Storage Technologies.2015:167-181.
[10]CONDIT J,NIGHTINGALE E B,FROST C,et al.Better i/othrough byte-addressable,persistent memory[C]∥Proceedings of the 22nd ACM Symposium on Operating Systems Principles.ACM,2009:133-146.
[11]WU X,QIU S,NARASIMHA R A L.Scmfs:A file system for storage class memory and its extensions[J].ACM Transactions on Storage,2013,9(3):7.
[12]DULLOOR S R,KUMAR S,KESHAVAMURTHY A,et al.System software for persistent memory[C]∥Proceedings of the Ninth European Conference on Computer Systems.ACM,2014:15.
[13]XU J,SWANSON S.NOVA:A Log-structured File System for Hybrid Volatile/Non-volatile Main Memories[C]∥Proceedings of the 14th USENIX Conference on File and Storage Technologies.2016:323-338.
[14]VOLOS H,TACK A J,SWIFT M M.Mnemosyne:Lightweight persistent memory[C]∥ACM SIGARCH Computer Architecture News.ACM,2011,39(1):91-104.
[15]COBURN J,CAULFIELD A M,AKEL A,et al.NV-Heaps:making persistent objects fast and safe with next-generation,non-volatile memories[J].ACM Sigplan Notices,2011,46(3):105-118.
[16]VOLOS H,NALLI S,PANNEERSELVAM S,et al.Aerie:fle-xible file-system interfaces to storage-class memory[C]∥Proceedings of the Ninth European Conference on Computer Systems.ACM,2014:14.
[17]GAO L S,IYER B.Analyzing Complementarities Using Software Stacks for Software Industry Acquisitions [J].Journal of Management Information Systems,2006,23(2):119-147.
[18]SCHWALB D,BERNING T,FAUST M,et al.nvm_malloc:Memory allocation for nvram[C]∥Accelerating Data Management Systems Using Modern Processor and Storage Architectures Workshop.In conjunction with VLDB,2015.
[19]BHANDARI,KUMUD,DHRUVA R,et al.Makalu:Fast reco-verable allocation of non-volatile memory[C]∥Proceedings of the 2016 ACM SIGPLAN International Conference on Object-Oriented Programming,Systems,Languages,and Applications.ACM,2016.
[20]HANANDEH F,AISMADI I,KWATHA M M.Evaluating alternative structures for prefix trees∥Proceedings of the World Congress on Engineering and Computer Science.2014:109-114.
[1] LIU Gao-cong, LUO Yong-ping, JIN Pei-quan. Accelerating Persistent Memory-based Indices Based on Hotspot Data [J]. Computer Science, 2022, 49(8): 26-32.
[2] FAN Peng-hao, HUANG Guo-rui, JIN Pei-quan. NVRC:Write-limited Logging for Non-volatile Memory [J]. Computer Science, 2021, 48(3): 130-135.
[3] ZHANG Xiao, ZHANG Si-meng, SHI Jia, DONG Cong, LI Zhan-huai. Review on Performance Optimization of Ceph Distributed Storage System [J]. Computer Science, 2021, 48(2): 1-12.
[4] WANG Xin-xin, ZHUGE Qing-feng, WU Lin. Method for Simulating and Verifying NVM-based In-memory File Systems [J]. Computer Science, 2020, 47(9): 74-80.
[5] GUO Jie, GAO Xi-ran, CHEN Li, FU You, LIU Ying. Parallelizing Multigrid Application Using Data-driven Programming Model [J]. Computer Science, 2020, 47(8): 32-40.
[6] YUAN Liang,ZHANG Yun-quan,BAI Xue-rui,ZHANG Guang-ting. Research on Locality-aware Design Mechanism of State-of-the-art Parallel Programming Languages [J]. Computer Science, 2020, 47(1): 7-16.
[7] WANG Tao, LIANG Xiao, WU Qian-qian, WANG Peng, CAO Wei, SUN Jian-ling. Logless Hash Table Based on NVM [J]. Computer Science, 2019, 46(9): 66-72.
[8] LI Yue,WANG Fang. Survey on Storage Security of Emerging Non-volatile Memory [J]. Computer Science, 2018, 45(7): 53-60.
[9] SUN Qiang, ZHUGE Qing-feng, CHEN Xian-zhang, Edwin H.-M.SHA, WU Lin. In-page Wear-leveling Memory Management Based on Non-volatile Memory [J]. Computer Science, 2018, 45(11A): 505-510.
[10] DU Jiang, ZHANG Zheng, ZHANG Jie-xin and TAI Ming. Survey of MapReduce Parallel Programming Model [J]. Computer Science, 2015, 42(Z6): 537-541.
[11] . CC$:A Parallel Programming Language for Distributed Many-core Platforms [J]. Computer Science, 2013, 40(3): 128-132.
[12] . [J]. Computer Science, 2008, 35(11): 248-250.
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!