TY - GEN
T1 - Scale and Performance in a Filesystem Semi-Microkernel
AU - Liu, Jing
AU - Rebello, Anthony
AU - Dai, Yifan
AU - Ye, Chenhao
AU - Kannan, Sudarsun
AU - Arpaci-Dusseau, Andrea C.
AU - Arpaci-Dusseauu, Remzi H.
N1 - Funding Information:
Acknowledgments We thank Simon Peter (our shepherd), the anonymous reviewers and the members of ADSL for their valuable feedback. We are grateful to Mike Swift for his suggestions and Shawn Zhong for his help on testing our artifact. We also thank the anonymous artifact evaluators for their effort. This material was supported by funding from NSF grants CNS-1838733 and CNS-1763810 and funding from Intel, Samsung, Seagate, and VMware. Sudarsun Kannan was partially supported by NSF CNS-1910593. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and may not reflect the views of NSF or any other institutions.
Publisher Copyright:
© 2021 ACM.
PY - 2021/10/26
Y1 - 2021/10/26
N2 - We present uFS, a user-level filesystem semi-microkernel. uFS takes advantage of a high-performance storage development kit to realize a fully-functional, crash-consistent, highly-scalable filesystem, with relative developer ease. uFS delivers scalable high performance with a number of novel techniques: careful partitioning of in-memory and on-disk data structures to enable concurrent access without locking, inode migration for balancing load across filesystem threads, and a dynamic scaling algorithm for determining the number of filesystem threads to serve the current workload. Through measurements, we show that uFS has good base performance and excellent scalability; for example, uFS delivers nearly twice the throughput of ext4 for LevelDB on YCSB workloads.
AB - We present uFS, a user-level filesystem semi-microkernel. uFS takes advantage of a high-performance storage development kit to realize a fully-functional, crash-consistent, highly-scalable filesystem, with relative developer ease. uFS delivers scalable high performance with a number of novel techniques: careful partitioning of in-memory and on-disk data structures to enable concurrent access without locking, inode migration for balancing load across filesystem threads, and a dynamic scaling algorithm for determining the number of filesystem threads to serve the current workload. Through measurements, we show that uFS has good base performance and excellent scalability; for example, uFS delivers nearly twice the throughput of ext4 for LevelDB on YCSB workloads.
KW - Direct Access
KW - Filesystem
KW - Microkernel
UR - http://www.scopus.com/inward/record.url?scp=85119098719&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85119098719&partnerID=8YFLogxK
U2 - 10.1145/3477132.3483581
DO - 10.1145/3477132.3483581
M3 - Conference contribution
AN - SCOPUS:85119098719
T3 - SOSP 2021 - Proceedings of the 28th ACM Symposium on Operating Systems Principles
SP - 819
EP - 835
BT - SOSP 2021 - Proceedings of the 28th ACM Symposium on Operating Systems Principles
PB - Association for Computing Machinery, Inc
T2 - 28th ACM Symposium on Operating Systems Principles, SOSP 2021
Y2 - 26 October 2021 through 29 October 2021
ER -