Journaling techniques are widely used in modern file systems as they provide high reliability and fast recovery from system failures. However, it reduces the performance benefit of buffer caching as journaling accounts for a bulk of the storage writes in real system environments. In this paper, we present a novel buffer cache architecture that subsumes the functionality of caching and journaling by making use of non-volatile memory such as PCM or STT-MRAM. Specifically, our buffer cache supports what we call the in-place commit scheme. This scheme avoids logging, but still provides the same journaling effect by simply altering the state of the cached block to frozen. As a frozen block still performs the function of caching, we show that in-place commit does not degrade cache performance. We implement our scheme on Linux 2.6.38 and measure the throughput and execution time of the scheme with various file I/O benchmarks. The results show that our scheme improves I/O performance by 76% on average and up to 240% compared to the existing Linux buffer cache with ext4 without any loss of reliability.
|Number of pages
|Published - 2013
|11th USENIX Conference on File and Storage Technologies, FAST 2013 - San Jose, United States
Duration: 12 Feb 2013 → 15 Feb 2013
|11th USENIX Conference on File and Storage Technologies, FAST 2013
|12/02/13 → 15/02/13
Bibliographical noteFunding Information:
We would like to thank our shepherd Anna Povzner and the anonymous reviewers for their insight and suggestions for improvement. This work was supported by the National Research Foundation of Korea (NRF) grant funded by the Korea government (MEST) (No.2011-0028825) and (No. 2012R1A2A2A0104573 3) and by the IT RD & program MKE/KEIT (No.10041608, Embedded System Software for New-memory based Smart Devices.) Hyokyung Bahn is the corresponding author of this paper.
© 2016 Australian Society of Sugar Cane Technologists. All rights reserved.