Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

UnistorFS: A Union Storage File System Design for Resource Sharing between Memory and Storage on Persistent RAM-Based Systems

Published: 26 February 2018 Publication History
  • Get Citation Alerts
  • Abstract

    With the advanced technology in persistent random access memory (PRAM), PRAM such as three-dimen-sional XPoint memory and Phase Change Memory (PCM) is emerging as a promising candidate for the next-generation medium for both (main) memory and storage. Previous works mainly focus on how to overcome the possible endurance issues of PRAM while both main memory and storage own a partition on the same PRAM device. However, a holistic software-level system design should be proposed to fully exploit the benefit of PRAM. This article proposes a <underline>uni</underline>on <underline>stor</underline>age <underline>f</underline>ile <underline>s</underline>ystem (UnistorFS), which aims to jointly manage the PRAM resource for main memory and storage. The proposed UnistorFS realizes the concept of using the PRAM resource as memory and storage interchangeably to achieve resource sharing while main memory and storage coexist on the same PRAM device with no partition or logical boundary. This approach not only enables PRAM resource sharing but also eliminates unnecessary data movements between main memory and storage since they are already in the same address space and can be accessed directly. At the same time, the proposed UnistorFS ensures the persistence of file data and sanity of the file system after power recycling. A series of experiments was conducted on a modified Linux kernel. The results show that the proposed UnistorFS can eliminate unnecessary memory accesses and outperform other PRAM-based file systems for 0.2--8.7 times in terms of read/write performance.

    References

    [1]
    N. Aggarwal, J. F. Cantin, M. H. Lipasti, and J. E. Smith. 2008. Power-efficient DRAM speculation. In Proceedings of the High Performance Computer Architecture (HPCA’08). 317--328.
    [2]
    N. Agrawal, W. J. Bolosky, J. R. Douceur, and J. R. Lorch. 2007. A five-year study of file-system metadata. Trans. Storage 3, 3, Article 9 (Oct. 2007), 9:1--9:32.
    [3]
    Joy Arulraj, Andrew Pavlo, and Subramanya R. Dulloor. 2015. Let’s talk about storage and recovery methods for non-volatile memory database systems. Proceedings of the 2015 ACM SIGMOD International Conference on Management of Data. 707--722.
    [4]
    D. Bovet and M. Cesati. 2005. Understanding The Linux Kernel. Oreilly 8 Associates Inc.
    [5]
    William H. Butler and Arunava Gupta. 2004. Magnetic memory: A signal boost is in order. Nat. Mater. 3 (2004), 845--847.
    [6]
    A. M. Caulfield, A. De, J. Coburn, T. I. Mollow, R. K. Gupta, and S. Swanson. 2010. Moneta: A high-performance storage array architecture for next-generation, non-volatile memories. In Proceedings of the 2010 43rd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO’43). 385--395.
    [7]
    Tseng-Yi Chen, Yuan-Hao Chang, Shuo-Han Chen, Chih-Ching Kuo, Ming-Chang Yang, Hsin-Wen Wei, and Wei-Kuan Shih. 2017. Enabling write-reduction strategy for journaling file systems over byte-addressable NVRAM. In Proceedings of the 54th Annual Design Automation Conference 2017 (DAC’17).
    [8]
    S.-W. Cheng, Y.-F. Chang, Y.-H. Chang, H.-W. Wei, and W.-K. Shih. 2014. Warranty-aware page management for PCM-based embedded systems. In Proceedings of the 2014 IEEE/ACM International Conference on Computer-Aided Design (ICCAD’14). 734--741.
    [9]
    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.
    [10]
    J. Condit, E. B. Nightingale, C. Frost, E. Ipek, B. Lee, D. Burger, and D. Coetzee.2009. Better I/O through byte-addressable, persistent memory. Proceedings of the ACM SIGOPS 22nd Symposium on Operating Systems Principles. 133--146.
    [11]
    Subramanya R. Dulloor, Sanjay Kumar, Anil Keshavamurthy, Philip Lantz, Dheeraj Reddy, Rajesh Sankaran, and Jeff Jackson. 2014. System software for persistent memory. In Proceedings of the 9th European Conference on Computer Systems (EuroSys’14).
    [12]
    Filebench. 2016. Filebench. Retrieved September 3, 2017 from https://github.com/filebench/filebench.
    [13]
    Fio. 2005. Flexible IO. Retrieved September 3, 2017 from https://github.com/axboe/fio.
    [14]
    J. Hu, C. J. Xue, W.-C. Tseng, Y. He, M. Qiu, and E. H. M. Sha. 2010. Reducing write activities on non-volatile memories in embedded CMPs via data migration and recomputation. In Proceedings of the 2010 47th ACM/IEEE Design Automation Conference (DAC’10). 350--355.
    [15]
    I. Hur and C. Lin. 2008. A comprehensive approach to DRAM power management. In Proceedings of the IEEE 14th International Symposium on High Performance Computer Architecture, 2008. (HPCA’08). 305--316.
    [16]
    Intel. 2016. Introducing Breakthrough Memory Technology. Retrieved September 3, 2017 from http://www.intel.com/content/www/us/en/architecture-and-technology/non-volatile-memory.html?wapkw&equals;3d+xpoint.
    [17]
    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 XV). 3--14.
    [18]
    ITRS. 2014. ITRS Roadmap 2014. Retrieved September 3, 2017 from http://www.itrs.net/reports.html.
    [19]
    A. N. Jacobvitz, R. Calderbank, and D. J. Sorin. 2013. Coset coding to extend the lifetime of memory. In Proceedings of the 2013 IEEE 19th International Symposium on High Performance Computer Architecture (HPCA’13). 222--233.
    [20]
    Y. Joo, D. Niu, X. Dong, G. Sun, N. Chang, and Y. Xie. 2010. Energy- and endurance-aware design of phase change memory caches. In Design, Automation Test in Europe Conference Exhibition (DATE’10). 136--141.
    [21]
    J. Jung, Y. Won, E. Kim, H. Shin, and B. Jeon. 2010. FRASH: Exploiting storage class memory in hybrid file system for hierarchical storage. Trans. Storage 6, 1, Article 3 (April 2010), 25 pages.
    [22]
    J.-Y. Jung and S. Cho. 2013. Memorage: Emerging persistent RAM based malleable main memory and storage architecture. In Proceedings of the 27th International ACM Conference on International Conference on Supercomputing. 115--126.
    [23]
    Sudarsun Kannan, Ada Gavrilovska, and Karsten Schwan. 2016. pVM: Persistent virtual memory for efficient capacity scaling and object storage. In Proceedings of the 11th European Conference on Computer Systems (EuroSys’16).
    [24]
    B.C. Lee, Ping Zhou, Jun Yang, Youtao Zhang, Bo Zhao, E. Ipek, O. Mutlu, and D. Burger. 2010. Phase-change technology and the future of main memory. IEEE Micro 30, 1 (Jan. 2010), 143.
    [25]
    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’09). 2--13.
    [26]
    E. Lee, J. Jang S. Yoo, and H. Bahn. 2012. Wips: A write-in-place snapshot file system for storage-class memory. Electron. Lett. 48, 17 (Aug. 2012), 1053--1054.
    [27]
    E. Lee, S. H. Yoo, and H. Bahn. 2015. Design and implementation of a journaling file system for phase-change memory. IEEE Trans. Comput. 64, 5 (May 2015), 1349--1360.
    [28]
    H. G. Lee, S. Baek, C. Nicopoulos, and J. Kim. 2011. An energy- and performance-aware DRAM cache architecture for hybrid DRAM/PCM main memory systems. In 2011 IEEE 29th International Conference on Computer Design (ICCD’11). 381--387.
    [29]
    S. Lee, H. Bahn, and S. H. Noh. 2011. Characterizing memory write references for efficient management of hybrid PCM and DRAM memory. In Proceedings of the 2011 IEEE 19th Annual International Symposium on Modelling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS’11). 168--175.
    [30]
    R.-S. Liu, D.-Y. Shen, C.-L. Yang, S.-C. Yu, and C.-Y. M. Wang. 2014. NVM duet: Unified working memory and persistent store architecture. In Proceedings of the 19th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS’14). ACM, 455--470.
    [31]
    Wolfgang Mauerer. 2008. Professional Linux Kernel Architecture. Wrox Press Ltd., Birmingham, UK.
    [32]
    R. Melhem, R. Maddah, and S. Cho. 2012. RDIS: A recursively defined invertible set scheme to tolerate multiple stuck-at faults in resistive memory. In Proceedings of the 2012 42nd Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN’12). 1--12. http://dl.acm.org/citation.cfm?id&equals;2354410.2355178.
    [33]
    D. T. Meyer and W. J. Bolosky. 2011. A study of practical deduplication. In Proceedings of the 9th USENIX Conference on File and Stroage Technologies (FAST’11).
    [34]
    Micron. 2016. Breakthrough Nonvolatile Memory Technology. Retrieved September 3, 2017 from http://www.micron.com/about/innovations/3d-xpoint-technology.
    [35]
    S. Mittal and J. S. Vetter. 2016. A survey of software techniques for using non-volatile memories for storage and main memory systems. IEEE Trans. Parallel Distrib. Syst. 27, 5 (2016), 1537--1550.
    [36]
    MongoDB. 2014. MongoDB. Retrieved September 3, 2017 from https://www.mongodb.com/.
    [37]
    NOVA. 2016. Retrieved September 3, 2017 from https://github.com/Andiry/nova.
    [38]
    PMFS. 2015. Persistent Memory File System. Retrieved September 3, 2017 from https://github.com/linux-pmfs/pmfs.
    [39]
    Qemu. 2016. Qemu. Retrieved September 3, 2017 from https://www.qemu.org/.
    [40]
    T. Quan, D. Yeo, and Y. Won. 2011. Cmfs: Compressed metadata file system for hybrid storage. network infrastructure and digital content. Proceedings of the 2010 2nd IEEE International Conference on Network Infrastructure and Digital Content. 1030--1034.
    [41]
    M. K. Qureshi. 2011. Pay-as-you-go: Low-overhead hard-error correction for phase change memories. In Proceedings of the 44th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 44). 318--328.
    [42]
    M. K. Qureshi, J. Karidis, M. Franceschini, V. Srinivasan, L. Lastras, and B. Abali. 2009. 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 42). 14--23.
    [43]
    M. K. Qureshi, V. Srinivasan, and J. A. Rivers. 2009. Scalable high performance main memory system using phase-change memory technology. In Proceedings of the 36th Annual International Symposium on Computer Architecture (ISCA’09). 24--33.
    [44]
    S. Schechter, G. H. Loh, K. Straus, and D. Burger. 2010. Use ECP, Not ECC, for hard failures in resistive memories. In Proceedings of the 37th Annual International Symposium on Computer Architecture (ISCA’10). 141--152.
    [45]
    N. H. Seong, D. H. Woo, and H.-H. S. Lee. 2010. Security refresh: Prevent malicious wear-out and increase durability for phase-change memory with dynamically randomized address mapping. In Proceedings of the 37th Annual International Symposium on Computer Architecture (ISCA’10). 383--394.
    [46]
    N. H. Seong, D. H. Woo, V. Srinivasan, J. A. Rivers, and H.-H. S. Lee. 2010. SAFER: Stuck-at-fault error recovery for memories. In Proceedings of the 2010 43rd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 43). 115--124.
    [47]
    E. H. M. Sha, X. Chen, Q. Zhuge, L. Shi, and W. Jiang. 2016. A new design of in-memory file system based on file virtual address framework. IEEE Trans. Comput. 65, 10 (Oct. 2016), 2959--2972.
    [48]
    Z. Shao, Y. Liu, Y. Chen, and T. Li. 2012. Utilizing PCM for energy optimization in embedded systems. In Proceedings of the 2012 IEEE Computer Society Annual Symposium on VLSI (ISVLSI’12). 398--403.
    [49]
    T. Vogelsang. 2010. Understanding the energy consumption of dynamic random access memories. In Proceedings of the 2010 43rd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO’43). 363--374.
    [50]
    K. Vättö, I. Cutress, and R. Smith. 2015. Analyzing Intel-Micron 3D XPoint: The Next Generation Non-Volatile Memory. Retrieved September 3, 2017 from http://www.anandtech.com/tag/memory.
    [51]
    Eric W. Weisstein. 2017. Gamma Distribution. Retrieved September 10, 2017 from http://mathworld.wolfram.com/GammaDistribution.html.
    [52]
    X. Wu and A. L. N. Reddy. 2011. SCMFS: A file system for storage class memory. In Proceedings of 2011 International Conference for High Performance Computing, Networking, Storage and Analysis (SC’11). Article 39, 11 pages.
    [53]
    Jian Xu and Steven Swanson. 2016. NOVA: A log-structured file system for hybrid volatile/non-volatile main memories. In Proceedings of the 14th USENIX Conference on File and Stroage Technologies (FAST’16).
    [54]
    Yahoo&excl;2010. Yahoo&excl; Cloud Serving Benchmark (YCSB). Retrieved September 10, 2017 from https://github.com/brianfrankcooper/YCSB.
    [55]
    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 the IEEE International Symposium on Circuits and Systems (ISCAS’07). 3014--3017.
    [56]
    M.-C. Yang, M. Kuo, C.-W. Tsao, and Y.-H. Chang. 2013. A fifty-percent rule to minimize the energy consumption of PCM-based storage systems. In Proceedings of the 2013 IEEE 19th International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA’13). 139--144.
    [57]
    D. H. Yoon, N. Muralimanohar, J. Chang, P. Ranganathan, N. P. Jouppi, and M. Erez. 2011. FREE-p: Protecting non-volatile memory against both hard and soft errors. In Proceedings of the 2011 IEEE 17th International Symposium on High Performance Computer Architecture (HPCA’11). 466--477.
    [58]
    Ping Zhou, Bo Zhao, Jun Yang, and Youtao Zhang. 2009. A durable and energy efficient main memory using phase change memory technology. In Proceedings of the 36th Annual International Symposium on Computer Architecture (ISCA’09). 14--23.
    [59]
    J.-G. Zhu, Y. Zheng, and G. A. Prinz. 2000. Ultrahigh density vertical magnetoresistive random access memory (invited). J. Appl. Phys. 87, 9 (2000), 6668--6673.

    Cited By

    View all
    • (2023)CLMS: Configurable and Lightweight Metadata Service for Parallel File Systems on NVMe SSDsAdvanced Parallel Processing Technologies10.1007/978-981-99-7872-4_6(101-112)Online publication date: 4-Aug-2023
    • (2022)Fast and Low Overhead Metadata Operations for NVM-Based File System Using Slotted PagingIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2022.320243641:11(4481-4491)Online publication date: 1-Nov-2022
    • (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: 1-Oct-2022
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Transactions on Storage
    ACM Transactions on Storage  Volume 14, Issue 1
    Special Issue on NVM and Storage
    February 2018
    237 pages
    ISSN:1553-3077
    EISSN:1553-3093
    DOI:10.1145/3190860
    • Editor:
    • Sam H. Noh
    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 ACM 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

    Publication History

    Published: 26 February 2018
    Accepted: 01 January 2018
    Revised: 01 September 2017
    Received: 01 January 2017
    Published in TOS Volume 14, Issue 1

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. FAT
    2. NVM
    3. embedded system
    4. file mapping
    5. page cache

    Qualifiers

    • Research-article
    • Research
    • Refereed

    Funding Sources

    • Ministry of Science and Technology, R.O.C.

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)34
    • Downloads (Last 6 weeks)1

    Other Metrics

    Citations

    Cited By

    View all
    • (2023)CLMS: Configurable and Lightweight Metadata Service for Parallel File Systems on NVMe SSDsAdvanced Parallel Processing Technologies10.1007/978-981-99-7872-4_6(101-112)Online publication date: 4-Aug-2023
    • (2022)Fast and Low Overhead Metadata Operations for NVM-Based File System Using Slotted PagingIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2022.320243641:11(4481-4491)Online publication date: 1-Nov-2022
    • (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: 1-Oct-2022
    • (2022)XPGraph: XPline-Friendly Persistent Memory Graph Stores for Large-Scale Evolving GraphsProceedings of the 55th Annual IEEE/ACM International Symposium on Microarchitecture10.1109/MICRO56248.2022.00091(1308-1325)Online publication date: 1-Oct-2022
    • (2021)Enabling Write-Reduction Multiversion Scheme With Efficient Dual-Range Query Over NVRAMIEEE Transactions on Very Large Scale Integration (VLSI) Systems10.1109/TVLSI.2021.307223329:6(1244-1256)Online publication date: Jun-2021
    • (2021)Contour: A Process Variation Aware Wear-Leveling Mechanism for Inodes of Persistent Memory File SystemsIEEE Transactions on Computers10.1109/TC.2020.300253770:7(1034-1045)Online publication date: 1-Jul-2021
    • (2020)Single machine graph analytics on massive datasets using Intel optane DC persistent memoryProceedings of the VLDB Endowment10.14778/3389133.338914513:8(1304-1318)Online publication date: 3-May-2020
    • (2020)TH-DPMSACM Transactions on Storage10.1145/341285216:4(1-31)Online publication date: 1-Oct-2020
    • (2020)Re-AnimatorProceedings of the 13th ACM International Systems and Storage Conference10.1145/3383669.3398276(61-74)Online publication date: 30-May-2020
    • (2020)ShieldNVMACM Transactions on Storage10.1145/338183516:2(1-31)Online publication date: 18-May-2020
    • Show More Cited By

    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