TY - GEN
T1 - FA-F2FS
T2 - 4th International Conference on Advanced Enterprise Information System, AEIS 2024
AU - Han, Jiayu
AU - Lan, Xingpeng
AU - Gu, Shouzhen
N1 - Publisher Copyright:
© 2024 IEEE.
PY - 2024
Y1 - 2024
N2 - Modern computers enhance I/O performance through parallel I/O, yet due to the scalability issues of file systems, parallel I/O cannot achieve the desired performance improvement. In this paper, we find that F2FS has scalability issue in append write. To address this issue, we propose FA-F2FS, the Fast Append Flash Friendly File System, which extends F2FS. We first identify the root cause of F2FS limited scalability in append write: contention on the Global Dirty List Lock. We then implement three mechanisms to address this limitation. First, we use inode-level fine-grained read-write locks to enhance parallelism in marking inodes as dirty. Second, we replace the Global Counter with the Per-CPU Counter, enabling parallel counting instead of serialized counting. Finally, we optimize access to the Global Dirty List by implementing Double-Checked Locking. We implement FA-F2FS in Linux kernel 5.10.1 and evaluate it on both synthetic and realistic workloads across two different scales of servers. Under realistic workloads in Filebench, FA-F2FS achieves 1.68× and 1.49× the throughput compared to the baseline F2FS for the FileServer and WebServer workloads, respectively. In the FxMark DWAL workload, FA-F2FS demonstrates at least 2× the throughput of F2FS.
AB - Modern computers enhance I/O performance through parallel I/O, yet due to the scalability issues of file systems, parallel I/O cannot achieve the desired performance improvement. In this paper, we find that F2FS has scalability issue in append write. To address this issue, we propose FA-F2FS, the Fast Append Flash Friendly File System, which extends F2FS. We first identify the root cause of F2FS limited scalability in append write: contention on the Global Dirty List Lock. We then implement three mechanisms to address this limitation. First, we use inode-level fine-grained read-write locks to enhance parallelism in marking inodes as dirty. Second, we replace the Global Counter with the Per-CPU Counter, enabling parallel counting instead of serialized counting. Finally, we optimize access to the Global Dirty List by implementing Double-Checked Locking. We implement FA-F2FS in Linux kernel 5.10.1 and evaluate it on both synthetic and realistic workloads across two different scales of servers. Under realistic workloads in Filebench, FA-F2FS achieves 1.68× and 1.49× the throughput compared to the baseline F2FS for the FileServer and WebServer workloads, respectively. In the FxMark DWAL workload, FA-F2FS demonstrates at least 2× the throughput of F2FS.
KW - Concurrency
KW - File System
KW - Scalability
UR - https://www.scopus.com/pages/publications/105007665171
U2 - 10.1109/AEIS65978.2024.00011
DO - 10.1109/AEIS65978.2024.00011
M3 - 会议稿件
AN - SCOPUS:105007665171
T3 - Proceedings - 2024 4th International Conference on Advanced Enterprise Information System, AEIS 2024
SP - 17
EP - 23
BT - Proceedings - 2024 4th International Conference on Advanced Enterprise Information System, AEIS 2024
PB - Institute of Electrical and Electronics Engineers Inc.
Y2 - 6 December 2024 through 8 December 2024
ER -