Reconstruct the Directories for In-Memory File Systems

Existing path lookup routines in file systems need to construct an auxiliary index in memory or traverse the dentries of the directory file sequentially, which brings either heavy writes or large timing cost. This paper designs a novel path lookup mechanism, Content-Indexed Browsing (CIB), for file systems on persistent memory, in which the structure of directory files is an exclusive index that can be searched in $O(log(n))$ time. We implement CIB in a real persistent memory file system, PMFS, denoted by CIB-PMFS. Comprehensive evaluations show that CIB can achieve times of performance improvement over the conventional lookup schemes in PMFS, and brings 20.4\% improvement on the overall performance of PMFS. Furthermore, CIB reduces the writes on persistent memory by orders of magnitude comparing with existing extra index schemes.

[1]  A. L. Narasimha Reddy,et al.  SCMFS: A file system for Storage Class Memory , 2011, 2011 International Conference for High Performance Computing, Networking, Storage and Analysis (SC).

[2]  K. Gopalakrishnan,et al.  Phase change memory technology , 2010, 1001.1164.

[3]  Wei-Che Tseng,et al.  Software enabled wear-leveling for hybrid PCM main memory on embedded systems , 2013, 2013 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[4]  Beng Chin Ooi,et al.  In-memory Databases: Challenges and Opportunities From Software and Hardware Perspectives , 2015, SGMD.

[5]  Youyou Lu,et al.  Efficient storage management for aged file systems on persistent memory , 2017, Design, Automation & Test in Europe Conference & Exhibition (DATE), 2017.

[6]  Yiran Chen,et al.  3M-PCM: Exploiting multiple write modes MLC phase change main memory in embedded systems , 2014, 2014 International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS).

[7]  Suman Nath,et al.  Rethinking Database Algorithms for Phase Change Memory , 2011, CIDR.

[8]  Kailash Gopalakrishnan,et al.  Overview of candidate device technologies for storage-class memory , 2008, IBM J. Res. Dev..

[9]  Jian Xu,et al.  NOVA: A Log-structured File System for Hybrid Volatile/Non-volatile Main Memories , 2016, FAST.

[10]  Christopher Frost,et al.  Better I/O through byte-addressable, persistent memory , 2009, SOSP '09.

[11]  Rajesh K. Gupta,et al.  NV-Heaps: making persistent objects fast and safe with next-generation, non-volatile memories , 2011, ASPLOS XVI.

[12]  Bingsheng He,et al.  NV-Tree: Reducing Consistency Cost for NVM-based Single Level Systems , 2015, FAST.

[13]  Qin Jin,et al.  Persistent B+-Trees in Non-Volatile Main Memory , 2015, Proc. VLDB Endow..

[14]  Sudipta Chattopadhyay,et al.  LAWN: Boosting the performance of NVMM File System through Reducing Write Amplification , 2018, 2018 55th ACM/ESDA/IEEE Design Automation Conference (DAC).