SplitFS: Reducing Software Overhead in File Systems for Persistent Memory

被引:147
作者
Kadekodi, Rohan [1 ]
Lee, Se Kwon [1 ]
Kashyap, Sanidhya [2 ]
Kim, Taesoo [2 ]
Kolli, Aasheesh [1 ,3 ]
Chidambaram, Vijay [3 ]
机构
[1] Univ Texas Austin, Austin, TX 78712 USA
[2] Georgia Inst Technol, Atlanta, GA 30332 USA
[3] VMware Res, Palo Alto, CA USA
来源
PROCEEDINGS OF THE TWENTY-SEVENTH ACM SYMPOSIUM ON OPERATING SYSTEMS PRINCIPLES (SOSP '19) | 2019年
基金
美国国家科学基金会;
关键词
Persistent Memory; File Systems; Crash Consistency; Direct Access;
D O I
10.1145/3341301.3359631
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We present SplitFS, a file system for persistent memory (PM) that reduces software overhead significantly compared to state-of-the-art PM file systems. SplitFS presents a novel split of responsibilities between a user-space library file system and an existing kernel PM file system. The user-space library file system handles data operations by intercepting POSIX calls, memory-mapping the underlying file, and serving the read and overwrites using processor loads and stores. Metadata operations are handled by the kernel PM file system (ext4 DAX). SplitFS introduces a new primitive termed relink to efficiently support file appends and atomic data operations. SplitFS provides three consistency modes, which different applications can choose from, without interfering with each other. SplitFS reduces software overhead by up-to 4x compared to the NOVA PM file system, and 17x compared to ext4 DAX. On a number of micro-benchmarks and applications such as the LevelDB key-value store running the YCSB benchmark, SplitFS increases application performance by up to 2x compared to ext4 DAX and NOVA while providing similar consistency guarantees.
引用
收藏
页码:494 / 508
页数:15
相关论文
共 30 条
[1]  
[Anonymous], TPC BENCHM C STAND S
[2]  
[Anonymous], 2019, REDIS IN MEMORY DATA
[3]   A fresh approach to file system Quality of Service [J].
Barham, PR .
PROCEEDINGS OF THE IEEE 7TH INTERNATIONAL WORKSHOP ON NETWORK AND OPERATING SYSTEM SUPPORT FOR DIGITAL AUDIO AND VIDEO, 1997, :113-122
[4]  
Belay A., 2014, 11 USENIX S OP SYST
[5]  
Belay Adam, 2012, 10 USENIX S OP SYST, P335
[6]  
Caulfield AM, 2012, ASPLOS XVII: SEVENTEENTH INTERNATIONAL CONFERENCE ON ARCHITECTURAL SUPPORT FOR PROGRAMMING LANGUAGES AND OPERATING SYSTEMS, P387
[7]  
Chidambaram V., 2012, Proceedings of the 10th USENIX conference on File and Storage Technologies, FAST 2012, San Jose, CA, USA, February 14-17, 2012, P9
[8]  
Condit J, 2009, SOSP'09: PROCEEDINGS OF THE TWENTY-SECOND ACM SIGOPS SYMPOSIUM ON OPERATING SYSTEMS PRINCIPLES, P133
[9]  
Cooper NE, 2010, UNDER CONTROL: GOVERNANCE ACROSS THE ENTERPRISE, P143, DOI 10.1007/978-1-4302-1593-6_10
[10]  
DeBergalis Matt, 2003, P FAST 03 C FIL STOR