Concurrent File Metadata Structure Using Readers-Writer Lock

  • Lee, Chang-Gyu
  • Noh, Sunghyun
  • Kang, Hyeongu
  • Hwang, Soon
  • Kim, Youngjae
Citations

WEB OF SCIENCE

4
Citations

SCOPUS

6

초록

Linux file systems serialize threads when writing shared files. Recent studies have attempted to adopt range locks on shared files to solve this serialization problem, allowing file I/O to be executed concurrently. However, we have found that even with a range lock, I/O throughput no longer increases after a certain number of cores and decreases rapidly on a manycore server. Through extensive performance profiling, we found the cascading tree lock problem that serializes concurrent accesses to the file metadata structure. A mutex lock-based locking mechanism for each file metadata structure serializes I/O requests in modern Linux file systems such as F2FS. In this paper, we present NCACHE, a novel file metadata cache framework using readers-writer lock that allows concurrent I/O operations for the shared file. NCACHE solves the I/O scalability problem in the manycore server while ensuring consistent updates. We implemented NCACHE in F2FS and evaluated it using FxMark on a 120-core server with high-performance NVMe SSDs. Our extensive evaluations show that NCACHE achieves maximum device throughput in FxMark's shared file I/O workload. It also shows 4.1x higher throughput compared to the baseline F2FS with range locks for realistic workloads.

키워드

Operating SystemFile SystemConcurrency
제목
Concurrent File Metadata Structure Using Readers-Writer Lock
저자
Lee, Chang-GyuNoh, SunghyunKang, HyeonguHwang, SoonKim, Youngjae
DOI
10.1145/3412841.3441992
발행일
2021-03-22
유형
Proceedings Paper
저널명
36TH ANNUAL ACM SYMPOSIUM ON APPLIED COMPUTING, SAC 2021
페이지
1172 ~ 1181