Guoyu Wang, Xilong Che, Haoyang Wei, Shuo Chen, Puyi He, Juncheng Hu
{"title":"NVPC:透明的 NVM 页面缓存","authors":"Guoyu Wang, Xilong Che, Haoyang Wei, Shuo Chen, Puyi He, Juncheng Hu","doi":"arxiv-2408.02911","DOIUrl":null,"url":null,"abstract":"Towards a compatible utilization of NVM, NVM-specialized kernel file systems\nand NVM-based disk file system accelerators have been proposed. However, these\nstudies only focus on one or several characteristics of NVM, while failing to\nexploit its best practice by putting NVM in the proper position of the whole\nstorage stack. In this paper, we present NVPC, a transparent acceleration to\nexisting kernel file systems with an NVM-enhanced page cache. The acceleration\nlies in two aspects, respectively matching the desperate needs of existing disk\nfile systems: sync writes and cache-missed operations. Besides, the fast DRAM\npage cache is preserved for cache-hit operations. For sync writes, a\nhigh-performance log-based sync absorbing area is provided to redirect data\ndestination from the slow disk to the fast NVM. Meanwhile, the byte-addressable\nfeature of NVM is used to prevent write amplification. For cache-missed\noperations, NVPC makes use of the idle space on NVM to extend the DRAM page\ncache, so that more and larger workloads can fit into the cache. NVPC is\nentirely implemented as a page cache, thus can provide efficient speed-up to\ndisk file systems with full transparency to users and full compatibility to\nlower file systems. In Filebench macro-benchmarks, NVPC achieves at most 3.55x, 2.84x, and 2.64x\nfaster than NOVA, Ext-4, and SPFS. In RocksDB workloads with working set larger\nthan DRAM, NVPC achieves 1.12x, 2.59x, and 2.11x faster than NOVA, Ext-4, and\nSPFS. Meanwhile, NVPC gains positive revenue from NOVA, Ext-4, and SPFS in\n62.5% of the tested cases in our read/write/sync mixed evaluation,\ndemonstrating that NVPC is more balanced and adaptive to complex real-world\nworkloads. Experimental results also show that NVPC is the only method that\naccelerates Ext-4 in particular cases for up to 15.19x, with no slow-down to\nany other use cases.","PeriodicalId":501333,"journal":{"name":"arXiv - CS - Operating Systems","volume":"47 1","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2024-08-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"NVPC: A Transparent NVM Page Cache\",\"authors\":\"Guoyu Wang, Xilong Che, Haoyang Wei, Shuo Chen, Puyi He, Juncheng Hu\",\"doi\":\"arxiv-2408.02911\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Towards a compatible utilization of NVM, NVM-specialized kernel file systems\\nand NVM-based disk file system accelerators have been proposed. However, these\\nstudies only focus on one or several characteristics of NVM, while failing to\\nexploit its best practice by putting NVM in the proper position of the whole\\nstorage stack. In this paper, we present NVPC, a transparent acceleration to\\nexisting kernel file systems with an NVM-enhanced page cache. The acceleration\\nlies in two aspects, respectively matching the desperate needs of existing disk\\nfile systems: sync writes and cache-missed operations. Besides, the fast DRAM\\npage cache is preserved for cache-hit operations. For sync writes, a\\nhigh-performance log-based sync absorbing area is provided to redirect data\\ndestination from the slow disk to the fast NVM. Meanwhile, the byte-addressable\\nfeature of NVM is used to prevent write amplification. For cache-missed\\noperations, NVPC makes use of the idle space on NVM to extend the DRAM page\\ncache, so that more and larger workloads can fit into the cache. NVPC is\\nentirely implemented as a page cache, thus can provide efficient speed-up to\\ndisk file systems with full transparency to users and full compatibility to\\nlower file systems. In Filebench macro-benchmarks, NVPC achieves at most 3.55x, 2.84x, and 2.64x\\nfaster than NOVA, Ext-4, and SPFS. In RocksDB workloads with working set larger\\nthan DRAM, NVPC achieves 1.12x, 2.59x, and 2.11x faster than NOVA, Ext-4, and\\nSPFS. Meanwhile, NVPC gains positive revenue from NOVA, Ext-4, and SPFS in\\n62.5% of the tested cases in our read/write/sync mixed evaluation,\\ndemonstrating that NVPC is more balanced and adaptive to complex real-world\\nworkloads. Experimental results also show that NVPC is the only method that\\naccelerates Ext-4 in particular cases for up to 15.19x, with no slow-down to\\nany other use cases.\",\"PeriodicalId\":501333,\"journal\":{\"name\":\"arXiv - CS - Operating Systems\",\"volume\":\"47 1\",\"pages\":\"\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2024-08-06\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"arXiv - CS - Operating Systems\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/arxiv-2408.02911\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"arXiv - CS - Operating Systems","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/arxiv-2408.02911","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Towards a compatible utilization of NVM, NVM-specialized kernel file systems
and NVM-based disk file system accelerators have been proposed. However, these
studies only focus on one or several characteristics of NVM, while failing to
exploit its best practice by putting NVM in the proper position of the whole
storage stack. In this paper, we present NVPC, a transparent acceleration to
existing kernel file systems with an NVM-enhanced page cache. The acceleration
lies in two aspects, respectively matching the desperate needs of existing disk
file systems: sync writes and cache-missed operations. Besides, the fast DRAM
page cache is preserved for cache-hit operations. For sync writes, a
high-performance log-based sync absorbing area is provided to redirect data
destination from the slow disk to the fast NVM. Meanwhile, the byte-addressable
feature of NVM is used to prevent write amplification. For cache-missed
operations, NVPC makes use of the idle space on NVM to extend the DRAM page
cache, so that more and larger workloads can fit into the cache. NVPC is
entirely implemented as a page cache, thus can provide efficient speed-up to
disk file systems with full transparency to users and full compatibility to
lower file systems. In Filebench macro-benchmarks, NVPC achieves at most 3.55x, 2.84x, and 2.64x
faster than NOVA, Ext-4, and SPFS. In RocksDB workloads with working set larger
than DRAM, NVPC achieves 1.12x, 2.59x, and 2.11x faster than NOVA, Ext-4, and
SPFS. Meanwhile, NVPC gains positive revenue from NOVA, Ext-4, and SPFS in
62.5% of the tested cases in our read/write/sync mixed evaluation,
demonstrating that NVPC is more balanced and adaptive to complex real-world
workloads. Experimental results also show that NVPC is the only method that
accelerates Ext-4 in particular cases for up to 15.19x, with no slow-down to
any other use cases.