ZTE Communications ›› 2023, Vol. 21 ›› Issue (1): 89-94.DOI: 10.12142/ZTECOM.202301011

• Research Paper • Previous Articles    

RCache: A Read-Intensive Workload-Aware Page Cache for NVM Filesystem

TU Yaofeng1,2, ZHU Bohong3(), YANG Hongzhang1,2, HAN Yinjun2, SHU Jiwu3   

  1. 1.State Key Laboratory of Mobile Network and Mobile Multimedia Technology, Shenzhen 518055, China
    2.ZTE Corporation, Shenzhen 518057, China
    3.Tsinghua University, Beijing 100084, China
  • Received:2022-11-01 Online:2023-03-25 Published:2024-03-15
  • About author:TU Yaofeng received his PhD degree from Nanjing University of Aeronautics and Astronautics, China. He is a senior expert at ZTE Corporation. His research interests include big data, database and machine learning.
    ZHU Bohong (zhubohong18@mails.tsinghua.edu.cn) received his master’s degree from Tsinghua University, China in 2018. He is currently studying in the School of Informatics, Xiamen University, China for his PhD degree. His research interests include filesystems, memory storage and distributed systems.
    YANG Hongzhang received his PhD degree from Peking University, China. He is an engineer at ZTE Corporation. His research interests include file systems, persistent memory and storage reliability.
    HAN Yinjun received his master’s degree from Nanjing University of Science and Technology, China. He is a senior engineer at ZTE Corporation. His research interests include distributed file systems, RDMA and persistent memory.
    SHU Jiwu received his PhD degree in computer science from Nanjing University, China in 1998. He is currently the dean of the School of Informatics, Xiamen University, China and a professor in the Department of Computer Science and Technology, Tsinghua University, China. His research interests include network storage systems, non-volatile memory systems and technologies, reliability for storage systems, and parallel/distributed processing technologies. He is a Changjiang Professor, CCF Fellow, and IEEE Fellow.
  • Supported by:
    This paper was supported by ZTE Industry?University?Institute Cooperation Funds(HC?CN?20181128026)

Abstract:

Byte-addressable non-volatile memory (NVM), as a new participant in the storage hierarchy, gives extremely high performance in storage, which forces changes to be made on current filesystem designs. Page cache, once a significant mechanism filling the performance gap between Dynamic Random Access Memory (DRAM) and block devices, is now a liability that heavily hinders the writing performance of NVM filesystems. Therefore state-of-the-art NVM filesystems leverage the direct access (DAX) technology to bypass the page cache entirely. However, the DRAM still provides higher bandwidth than NVM, which prevents skewed read workloads from benefiting from a higher bandwidth of the DRAM and leads to sub-optimal performance for the system. In this paper, we propose RCache, a read-intensive workload-aware page cache for NVM filesystems. Different from traditional caching mechanisms where all reads go through DRAM, RCache uses a tiered page cache design, including assigning DRAM and NVM to hot and cold data separately, and reading data from both sides. To avoid copying data to DRAM in a critical path, RCache migrates data from NVM to DRAM in a background thread. Additionally, RCache manages data in DRAM in a lock-free manner for better latency and scalability. Evaluations on Intel Optane Data Center (DC) Persistent Memory Modules show that, compared with NOVA, RCache achieves 3 times higher bandwidth for read-intensive workloads and introduces little performance loss for write operations.

Key words: storage system, file system, persistent memory