TY - GEN
T1 - Splitfs
T2 - 27th ACM Symposium on Operating Systems Principles, SOSP 2019
AU - Kadekodi, Rohan
AU - Lee, Se Kwon
AU - Kashyap, Sanidhya
AU - Kim, Taesoo
AU - Kolli, Aasheesh
AU - Chidambaram, Vijay
N1 - Funding Information:
We would like to thank our shepherd, Keith Smith, the anonymous reviewers, and members of the LASR group and the Systems and Storage Lab for their feedback and guidance. We would like to thank Intel and ETRI IITP/KEIT[2014-3-00035] for providing access to Optane DC Persistent Memory for conducting experiments for the paper. This work was supported by NSF CAREER grant 1751277 and generous donations from VMware, Google and Facebook. Any opinions, findings, and conclusions, or recommendations expressed herein are those of the authors and do not necessarily reflect the views of other institutions.
Funding Information:
Rohan Kadekodi and Se Kwon Lee are supported by SOSP 2019 student travel scholarships from the National Science Foundation.
Publisher Copyright:
© 2019 Association for Computing Machinery.
PY - 2019/10/27
Y1 - 2019/10/27
N2 - 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 4× compared to the NOVA PM file system, and 17× 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 2× compared to ext4 DAX and NOVA while providing similar consistency guarantees.
AB - 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 4× compared to the NOVA PM file system, and 17× 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 2× compared to ext4 DAX and NOVA while providing similar consistency guarantees.
UR - http://www.scopus.com/inward/record.url?scp=85076775670&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85076775670&partnerID=8YFLogxK
U2 - 10.1145/3341301.3359631
DO - 10.1145/3341301.3359631
M3 - Conference contribution
AN - SCOPUS:85076775670
T3 - SOSP 2019 - Proceedings of the 27th ACM Symposium on Operating Systems Principles
SP - 494
EP - 508
BT - SOSP 2019 - Proceedings of the 27th ACM Symposium on Operating Systems Principles
PB - Association for Computing Machinery, Inc
Y2 - 27 October 2019 through 30 October 2019
ER -