Browse > Article
http://dx.doi.org/10.7471/ikeee.2019.23.1.80

Persistent Page Table and File System Journaling Scheme for NVM Storage  

Ahn, Jae-hyeong (Dept. of Computer Science and Engineering, University of Seoul)
Hyun, Choul-seung (Dept. of Computer Science and Engineering, University of Seoul)
Lee, Dong-hee (Dept. of Computer Science and Engineering, University of Seoul)
Publication Information
Journal of IKEEE / v.23, no.1, 2019 , pp. 80-90 More about this Journal
Abstract
Even though Non-Volatile Memory (NVM) is used for data storage, a page table should be built to access data in it. And this observation leads us to the Persistent Page Table (PPT) scheme that keeps the page table in NVM persistently. By the way, processors have different page table structures and really operational page table cannot be built without virtual and physical addresses of NVM. However, those addresses are determined dynamically when NVM storage is attached to the system. Thus, the PPT should have system-independent and also address-independent structure and really working system-dependent page table should be built from the PPT. Moreover, entries of PPT should be updated atomically and, in this paper, we describe the design of PPT that meets those requirements. And we investigate how file systems can decrease the journaling overhead with the swap operation, which is a new operation created by the PPT. We modified the Ext4 file system in Linux and experiments conducted with Filebench workloads show that the swap operation enhances file system performance up to 60%.
Keywords
Non-Volatile Memory; Ext4 File System; Journaling Overhead; Permanent Page Table; Swap Operation;
Citations & Related Records
연도 인용수 순위
  • Reference
1 C. Chen, J. Yang, Q. Wei, C. Wang, and M. Xue., "Optimizing File Systems with Fine-grained Metadata Journaling on Byte-addressable NVM," ACM Transactions on Storage, vol. 13, Issue 2, pp. 13:1-13:25, 2017. DOI: 10.1145/3060147
2 J. Choi, J. Kim, and H. Han, "Efficient Memory Mapped File I/O for In-Memory File Systems," in Proc. of the 9'th USENIX Workshop on Hot Topics in Storage and File Systems (HotStorage 17), 2017.
3 V. Tarasov, E. Zadok, and S. Shepler, "Filebench: A Flexible Framework for File System Benchmarking," ;login: USENIX Magazine, vol. 41, no. 1, 2016.
4 J.-Y. Jung and S. Cho, "Memorage: Emerging Persistent RAM based Malleable Main Memory and Storage Architecture," In Proc. of the ACM International Conference on Supercomputing (ICS 13), 2013. DOI: 10.1145/2464996.2465005
5 S. R. Dulloor, S. Kumar, A. Keshavamurthy, P. Lantz, D. Reddy, R. Sankaran, and J. Jackson, "System Software for Persistent Memory," In Proc. of the 9th European Conference on Computer Systems (EuroSys 14), pp. 15:1-15:15, 2014. DOI: 10.1145/2592798.2592814
6 J. Coburn, A. M. Caulfield, A. Akel, L. M. Grupp, R. K. Gupta, R. Jhala, and S. Swanson, "NV-Heaps: Making Persistent Objects Fast and Safe with Next-generation, Non-Volatile Memories," In Proc. of the 16th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS 11), pp. 105-118, 2011. DOI: 10.1145/1950365.1950380
7 H. Volos, A. J. Tack, and M. M. Swift, "Mnemosyne: Lightweight Persistent Memory," Proc. of the 16th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS 11), pp. 91-104, 2011. DOI: 10.1145/1950365.1950380
8 R.-S. Liu, D.-Y. Shen, C.-L. Yang, S.-C. Yu, C.-Y. M. Wang, "NVM duet: Unified Working Memory and Persistent Store Architecture," Proc. of the 19th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS 14), pp. 455-470, 2014. DOI: 10.1145/2541940.2541957
9 J. Xu and S. Swanson, "NOVA: A Log-structured File System for Hybrid Volatile/Non-volatile Main Memories," In Proc. of the 14th USENIX Conference on File and Storage Technologies (FAST 16), pp. 323-338, 2016.
10 J. Condit, E. B. Nightingale, C. Frost, E. Ipek, B. Lee, D. Burger, and D. Coetzee, "Better I/O Through Byte-Addressable, Persistent Memory," In Proc. of the Symposium on Operating Systems Principles (SOSP 09), pp. 133-146, 2009. DOI: 10.1145/1629575.1629589
11 L. Chua, "Resistance switching memories are memristors," Appied Physics A vol. 102, issue 4, pp. 765-783, 2011. DOI: 10.1007/s00339-011-6264-9   DOI
12 S. Raoux, G. W. Burr, M. J. Breitwisch, C. T. Rettner, Y.-C. Chen, R. M. Shelby, M. Salinga, D. Krebs, S.-H. Chen, H.-L. Lung, and C. H. Lan, "Phase-change random access memory: A scalable technology," Journal of Vacuum Science & Technology B, vol. 28, no. 2, pp. 223-262, 2010. DOI: 10.1147/rd.524.0465   DOI
13 S. Gao, J. Xu, B. He, B. Choi, and H. Hu, "PCMLogging: Reducing Transaction Logging Overhead with PCM," In Proc. of the 20th ACM International Conference on Information and Knowledge Management (CIKM 11), pp. 2401-2404, 2011. DOI: 10.1145/2063576.2063977
14 T. Kawahara, "Scalable Spin-Transfer Torque RAM Technology for Normally-Off Computing," IEEE Design & Test of Computers, vol. 28, no. 1, pp. 52-63, 2011. DOI: 10.1109/MDT.2010.97   DOI
15 P. Chi, S. Li, Z. Qi, P. Gu, C. Xu, T. Zhang, J. Zhao, Y. Liu, Y. Wang, and Y. Xie, "PRIME: A Novel Processing-In-Memory Architecture for Neural Network Computation in ReRAM-based Main Memory," in Proc. of ACM/IEEE 43rd Annual International Symposium on Computer Architecture (ISCA 16), 2016. DOI: 10.1109/ISCA.2016.13
16 Intel. "3D XPoint Unveiled-The Next Breakthrough in Memory Technology," http://www.intel.com/con-tent/www/us/en/architecture-andtechnology/3d-xpoint-unveiled-video.html.
17 V. Prabhakaran, A. C. Arpaci-Dusseau, and R. H. Arpaci-Dusseau, "Analysis and Evolution of Journaling File Systems," in Proc. of USENIX Annual Technical Conference (ATC 05), pp. 106-120, 2005.
18 S. Kannan, A. Gavrilovska, and K. Schwan, "pVM: Persistent Virtual Memory for Efficient Capacity Scaling and Object Storage," In Proc. of the European Conference on Computer Systems (EuroSys 16), pp. 13:1-13:16, 2016. DOI: 10.1145/2901318.2901325
19 S. Zheng, L. Huang, H. Liu, L. Wu, and J. Zha, "HMVFS: A Hybrid Memory Versioning File System," In Proc. of the 32nd Symposium on Mass Storage Systems and Technologies (MSST 16), 2016. DOI: 10.1109/MSST.2016.7897079
20 J. Ou, J. Shu, and Y. Lu, "A High Performance File System for Non-Volatile Main Memory," In Proc. of the 11th European Conference on Computer Systems (EuroSys 16), pp. 12:1-12:16, 2016. DOI: 10.1145/2901318.2901324
21 H. Wan, Y. Lu, Y. Xu, and J. Shu, "Empirical Study of Redo and Undo Logging in Persistent Memory," In Proc. of the 5th Non-Volatile Memory Systems and Applications Symposium (NVMSA 16), pp. 1-6, 2016. DOI: 10.1109/NVMSA.2016.7547178
22 M. Liu, M. Zhang, K. Chen, X. Qian, Y. Wu, and J. Ren, "DudeTM: Building Durable Transactions with Decoupling for Persistent memory," In Proc. of the 22nd International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS 17), pp. 329-343, 2017. DOI: 10.1145/3037697.3037714
23 A. Memaripour, A. Badam, A. Phanishayee, Y. Zhou, R. Alagappan, K. Strauss, and S. Swanson, "Atomic In-place Updates for Non-Volatile Main Memories with Kamino-Tx" In Proc. of the 12th European Conference on Computer Systems (EuroSys 17), pp. 499-512, 2017. DOI: 10.1145/3064176.3064215
24 Y. Zhang, J. Yang, A. Memaripour, and S. Swanson, "Mojim: A Reliable and Highly-Available Non-Volatile Memory System," In Proc. of the 20th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS 15), pp. 3-18, 2015. DOI: 10.1145/2694344.2694370
25 W.-H. Kim, J. Kim, W. Baek, B. Nam, and Y. Won, "NVWAL: Exploiting NVRAM in Write-Ahead Logging," In Proc. of the 21st International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS 16), pp. 385-398, 2016. DOI: 10.1145/2872362.2872392