Abstract
In recent years, the next-generation non-volatile memory (NVM) technologies have emerged with DRAM-like byte addressability and disk-like durability. Computer architects have proposed to use them to build persistent memory that blurs the conventional boundary between volatile memory and non-volatile storage. However, ARM processors, ones that are widely used in embedded computing systems, start providing architectural supports to utilize NVM since ARMv8. In this article, we consider tailoring B+-tree for NVM operated by a 64-bit ARMv8 processor. We first conduct an empirical study of performance overhead in writing and reading data for a B+-tree with an ARMv8 processor, including the time cost of cache line flushes and memory fences for crash consistency as well as the execution time of binary search compared to that of linear search. We hence identify the key weaknesses in the design of B+-tree with ARMv8 architecture. Accordingly, we develop a new B+-tree variant, namely, <underline>c</underline>rash <underline>r</underline>ecoverable <underline>A</underline>RMv8-oriented <underline>B</underline>+-tree (Crab-tree). To insert and delete data at runtime, Crab-tree selectively chooses one of two strategies, i.e., copy on write and shifting in place, depending on which one causes less consistency cost. Crab-tree regulates a strict execution order in both strategies and recovers the tree structure in case of crashes. To further improve the performance of Crab-tree, we employ three methods to reduce software overhead, cache misses, and consistency cost, respectively. We have implemented and evaluated Crab-tree in Raspberry Pi 3 Model B+ with emulated NVM. Experiments show that Crab-tree significantly outperforms state-of-the-art B+-trees designed for persistent memory by up to 2.2× and 3.7× in write and read performances, respectively, with both consistency and scalability achieved.
- Everspin. 2018. MRAM Technology Attributes. Retrieved from https://www.everspin.com/mram-technology-attributes.Google Scholar
- Shimin Chen, Phillip B. Gibbons, and Suman Nath. 2011. Rethinking database algorithms for phase change memory. In Proceedings of the 5th Biennial Conference on Innovative Data Systems Research (CIDR’11).1--11. Retrieved from https://www.microsoft.com/en-us/research/publication/rethinking-database-algorithms-for-phase-change-memory/.Google Scholar
- Linghao Song, Youwei Zhuo, Xuehai Qian, Hai Li, and Yiran Chen. 2018. GraphR: Accelerating graph processing using ReRAM. In Proceedings of the IEEE International Symposium on High Performance Computer Architecture (HPCA’18). 531--543. DOI:http://dx.doi.org/10.1109/HPCA.2018.00052Google Scholar
Cross Ref
- Micron and Intel. 2015. 3D XPoint Technology. Retrieved from http://www.micron.com/about/innovations/3d-xpoint-technology.Google Scholar
- Xiangyu Dong, Naveen Muralimanohar, Norm Jouppi, Richard Kaufmann, and Yuan Xie. 2009. Leveraging 3D PCRAM technologies to reduce checkpoint overhead for future exascale systems. In Proceedings of the Conference on High Performance Computing Networking, Storage and Analysis (SC’09). ACM, New York, NY. DOI:http://dx.doi.org/10.1145/1654059.1654117Google Scholar
Digital Library
- Mingzhe Zhang, Lunkai Zhang, Lei Jiang, Zhiyong Liu, and Frederic T. Chong. 2017. Balancing performance and lifetime of MLC PCM by using a region retention monitor. In Proceedings of the IEEE International Symposium on High Performance Computer Architecture (HPCA’17). 385--396. DOI:http://dx.doi.org/10.1109/HPCA.2017.45Google Scholar
- Jeremy Condit, Edmund B. Nightingale, Christopher Frost, Engin Ipek, Benjamin Lee, Doug Burger, and Derrick Coetzee. 2009. Better I/O through byte-addressable, persistent memory. In Proceedings of the ACM SIGOPS 22nd Symposium on Operating Systems Principles (SOSP’09). ACM, New York, NY, 133--146. DOI:http://dx.doi.org/10.1145/1629575.1629589Google Scholar
Digital Library
- Eunji Lee, Hyokyung Bahn, and Sam H. Noh. 2013. Unioning of the buffer cache and journaling layers with non-volatile memory. In Proceedings of the 11th USENIX Conference on File and Storage Technologies (FAST’13). USENIX, San Jose, CA, 73--80.Google Scholar
Digital Library
- Subramanya R. Dulloor, Sanjay Kumar, Anil Keshavamurthy, Philip Lantz, Dheeraj Reddy, Rajesh Sankaran, and Jeff Jackson. 2014. System software for persistent memory. In Proceedings of the 9th European Conference on Computer Systems (EuroSys’14). ACM, New York, NY. DOI:http://dx.doi.org/10.1145/2592798.2592814Google Scholar
Digital Library
- Youyou Lu, Jiwu Shu, and Long Sun. 2015. Blurred persistence in transactional persistent memory. In Proceedings of the 31st Symposium on Mass Storage Systems and Technologies (MSST’15). 1--13. DOI:http://dx.doi.org/10.1109/MSST.2015.7208274Google Scholar
Cross Ref
- Jian Xu and Steven Swanson. 2016. NOVA: A log-structured file system for hybrid volatile/non-volatile main memories. In Proceedings of the 14th USENIX Conference on File and Storage Technologies (FAST’16). USENIX Association, Santa Clara, CA, 323--338. Retrieved from https://www.usenix.org/conference/fast16/technical-sessions/presentation/xu.Google Scholar
Digital Library
- Qingsong Wei, Chundong Wang, Cheng Chen, Yechao Yang, Jun Yang, and Mingdi Xue. 2017. Transactional NVM cache with high performance and crash consistency. In Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis (SC’17). ACM, New York, NY. DOI:http://dx.doi.org/10.1145/3126908.3126940Google Scholar
Digital Library
- Tseng-Yi Chen, Yuan-Hao Chang, Shuo-Han Chen, Chih-Ching Kuo, Ming-Chang Yang, Hsin-Wen Wei, and Wei-Kuan Shih. 2017. Enabling write-reduction strategy for journaling file systems over byte-addressable NVRAM. In Proceedings of the 54th Design Automation Conference (DAC’17). ACM, New York, NY. DOI:http://dx.doi.org/10.1145/3061639.3062236Google Scholar
Digital Library
- Jiaxin Ou, Jiwu Shu, and Youyou Lu. 2016. A high performance file system for non-volatile main memory. In Proceedings of the 11th European Conference on Computer Systems (EuroSys’16). ACM, New York, NY. DOI:http://dx.doi.org/10.1145/2901318.2901324Google Scholar
Digital Library
- Joel Coburn, Adrian M. Caulfield, Ameen Akel, Laura M. Grupp, Rajesh K. Gupta, Ranjit Jhala, and Steven Swanson. 2011. NV-Heaps: Making persistent objects fast and safe with next-generation, non-volatile memories. In Proceedings of the 16th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS’11). ACM, New York, NY, 105--118. DOI:http://dx.doi.org/10.1145/1950365.1950380Google Scholar
Digital Library
- Deshan Zhang, Lei Ju, Mengying Zhao, Xiang Gao, and Zhiping Jia. 2016. Write-back aware shared last-level cache management for hybrid main memory. In Proceedings of the 53rd Design Automation Conference (DAC’16). ACM, New York, NY. DOI:http://dx.doi.org/10.1145/2897937.2898110Google Scholar
Digital Library
- Intel. 2014. Persistent Memory Development Kit. Retrieved from http://pmem.io/pmdk/.Google Scholar
- Haris Volos, Andres Jaan Tack, and Michael M. Swift. 2011. Mnemosyne: Lightweight persistent memory. In Proceedings of the 16th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS’11). ACM, New York, NY, 91--104. DOI:http://dx.doi.org/10.1145/1950365.1950379Google Scholar
- Haris Volos, Sanketh Nalli, Sankarlingam Panneerselvam, Venkatanathan Varadarajan, Prashant Saxena, and Michael M. Swift. 2014. Aerie: Flexible file-system interfaces to storage-class memory. In Proceedings of the 9th European Conference on Computer Systems (EuroSys’14). ACM, New York, NY. DOI:http://dx.doi.org/10.1145/2592798.2592810Google Scholar
- Chundong Wang and Sudipta Chattopadhyay. 2018. LAWN: Boosting the performance of NVMM file system through reducing write amplification. In Proceedings of the 55th Design Automation Conference (DAC’18). ACM, New York, NY. DOI:http://dx.doi.org/10.1145/3195970.3196066Google Scholar
Digital Library
- Fang Wang, Zhaoyan Shen, Lei Han, and Zili Shao. 2019. ReRAM-based processing-in-memory architecture for blockchain platforms. In Proceedings of the 24th Asia and South Pacific Design Automation Conference (ASPDAC’19). ACM, New York, NY, 615--620. DOI:http://dx.doi.org/10.1145/3287624.3287656Google Scholar
Digital Library
- ARM. 2017. ARM Architecture Reference Manual ARMv8, for ARMv8-A architecture profile. Retrieved from https://static.docs.arm.com/ddi0487/ca/DDI0487C_a_armv8_arm.pdf.Google Scholar
- ARM. 2016. ARMv8-A architecture evolution. Retrieved from https://community.arm.com/processors/b/blog/posts/armv8-a-architecture-evolution.Google Scholar
- Shivaram Venkataraman, Niraj Tolia, Parthasarathy Ranganathan, and Roy H. Campbell. 2011. Consistent and durable data structures for non-volatile byte-addressable memory. In Proceedings of the 9th USENIX Conference on File and Stroage Technologies (FAST’11). USENIX Association, Berkeley, CA, 1--15. Retrieved from http://dl.acm.org/citation.cfm?id=1960475.1960480.Google Scholar
Digital Library
- Jun Yang, Qingsong Wei, Cheng Chen, Chundong Wang, Khai Leong Yong, and Bingsheng He. 2015. NV-Tree: Reducing consistency cost for NVM-based single level systems. In Proceedings of the 13th USENIX Conference on File and Storage Technologies (FAST’15). USENIX Association, Santa Clara, CA, 167--181.Google Scholar
Digital Library
- Shimin Chen and Qin Jin. 2015. Persistent B+-trees in non-volatile main memory. Proc. VLDB Endow. 8, 7 (Feb. 2015), 786--797. DOI:http://dx.doi.org/10.14778/2752939.2752947Google Scholar
Digital Library
- Ismail Oukid, Johan Lasperas, Anisoara Nica, Thomas Willhalm, and Wolfgang Lehner. 2016. FPTree: A hybrid SCM-DRAM persistent and concurrent B-tree for storage class memory. In Proceedings of the International Conference on Management of Data (SIGMOD’16). ACM, New York, NY, 371--386. DOI:http://dx.doi.org/10.1145/2882903.2915251Google Scholar
Digital Library
- Deukyeon Hwang, Wook-Hee Kim, Youjip Won, and Beomseok Nam. 2018. Endurable transient inconsistency in byte-addressable persistent B+-tree. In Proceedings of the 16th USENIX Conference on File and Storage Technologies (FAST’18). USENIX Association, Oakland, CA, 187--200. Retrieved from https://www.usenix.org/conference/fast18/presentation/hwang.Google Scholar
- Ren-Shuo Liu, De-Yu Shen, Chia-Lin Yang, Shun-Chih Yu, and Cheng-Yuan Michael Wang. 2014. NVM duet: Unified working memory and persistent store architecture. In Proceedings of the 19th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS’14). ACM, New York, NY, 455--470. DOI:http://dx.doi.org/10.1145/2541940.2541957Google Scholar
Digital Library
- Youyou Lu, Jiwu Shu, Long Sun, and Onur Mutlu. 2014. Loose-ordering consistency for persistent memory. In Proceedings of the 32nd IEEE International Conference on Computer Design (ICCD’14). 216--223. DOI:http://dx.doi.org/10.1109/ICCD.2014.6974684Google Scholar
Cross Ref
- Arpit Joshi, Vijay Nagarajan, Stratis Viglas, and Marcelo Cintra. 2017. ATOM: Atomic durability in non-volatile memory through hardware logging. In Proceedings of the IEEE International Symposium on High Performance Computer Architecture (HPCA’17). 361--372. DOI:http://dx.doi.org/10.1109/HPCA.2017.50Google Scholar
Cross Ref
- Seunghee Shin, Satish Kumar Tirukkovalluri, James Tuck, and Yan Solihin. 2017. Proteus: A flexible and fast software supported hardware logging approach for NVM. In Proceedings of the 50th IEEE/ACM International Symposium on Microarchitecture (MICRO’17). ACM, New York, NY, 178--190. DOI:http://dx.doi.org/10.1145/3123939.3124539Google Scholar
Digital Library
- M. A. Ogleari, E. L. Miller, and J. Zhao. 2018. Steal but no force: Efficient hardware undo+redo logging for persistent memory systems. In Proceedings of the IEEE International Symposium on High Performance Computer Architecture (HPCA’18). 336--349. DOI:http://dx.doi.org/10.1109/HPCA.2018.00037Google Scholar
- Scott Rixner, William J. Dally, Ujval J. Kapasi, Peter Mattson, and John D. Owens. 2000. Memory access scheduling. In Proceedings of the 27th International Symposium on Computer Architecture (ISCA’00). ACM, New York, NY, 128--138. DOI:http://dx.doi.org/10.1145/339647.339668Google Scholar
- Chundong Wang, Qingsong Wei, Jun Yang, Cheng Chen, and Mingdi Xue. 2015. How to be consistent with persistent memory? An evaluation approach. In Proceedings of the IEEE International Conference on Networking, Architecture and Storage (NAS’15). 186--194. DOI:http://dx.doi.org/10.1109/NAS.2015.7255223Google Scholar
Cross Ref
- Peter Sewell, Susmit Sarkar, Scott Owens, Francesco Zappa Nardelli, and Magnus O. Myreen. 2010. X86-TSO: A rigorous and usable programmer’s model for x86 multiprocessors. Commun. ACM 53, 7 (July 2010), 89--97. DOI:http://dx.doi.org/10.1145/1785414.1785443Google Scholar
Digital Library
- The Raspberry Pi Foundation. 2018. Raspberry Pi 3 Model B+. Retrieved from https://www.raspberrypi.org/products/raspberry-pi-3-model-b-plus/.Google Scholar
- Moinuddin K. Qureshi, Vijayalakshmi Srinivasan, and Jude A. Rivers. 2009. Scalable high performance main memory system using phase-change memory technology. In Proceedings of the 36th International Symposium on Computer Architecture (ISCA’09). ACM, New York, NY, 24--33. DOI:http://dx.doi.org/10.1145/1555754.1555760Google Scholar
- Zhenyu Sun, Xiuyuan Bi, Hai (Helen) Li, Weng-Fai Wong, Zhong-Liang Ong, Xiaochun Zhu, and Wenqing Wu. 2011. Multi retention level STT-RAM cache designs with a dynamic refresh scheme. In Proceedings of the 44th IEEE/ACM International Symposium on Microarchitecture (MICRO’11). ACM, New York, NY, 329--338. DOI:http://dx.doi.org/10.1145/2155620.2155659Google Scholar
Digital Library
- Dushyanth Narayanan and Orion Hodson. 2012. Whole-system persistence. SIGPLAN Not. 47, 4 (Mar. 2012), 401--410. DOI:http://dx.doi.org/10.1145/2248487.2151018Google Scholar
Digital Library
- Jishen Zhao, Sheng Li, Doe Hyun Yoon, Yuan Xie, and Norman P. Jouppi. 2013. Kiln: Closing the performance gap between systems with and without persistence support. In Proceedings of the 46th IEEE/ACM International Symposium on Microarchitecture (MICRO’13). ACM, New York, NY, 421--432. DOI:http://dx.doi.org/10.1145/2540708.2540744Google Scholar
- Hyojun Kim, Sangeetha Seshadri, Clement L. Dickey, and Lawrence Chiu. 2014. Evaluating phase change memory for enterprise storage systems: A study of caching and tiering approaches. In Proceedings of the 12th USENIX Conference on File and Storage Technologies (FAST’14). USENIX, Santa Clara, CA, 33--45. Retrieved from https://www.usenix.org/conference/fast14/technical-sessions/presentation/kim.Google Scholar
Digital Library
- Rujia Wang, Lei Jiang, Youtao Zhang, Linzhang Wang, and Jun Yang. 2015. Selective restore: An energy efficient read disturbance mitigation scheme for future STT-MRAM. In Proceedings of the 52nd Design Automation Conference (DAC’15). ACM, New York, NY. DOI:http://dx.doi.org/10.1145/2744769.2744908Google Scholar
Digital Library
- Mingkai Dong and Haibo Chen. 2017. Soft updates made simple and fast on non-volatile memory. In Proceedings of the USENIX Technical Conference (USENIX ATC’17). USENIX Association, Santa Clara, CA, 719--731. Retrieved from https://www.usenix.org/conference/atc17/technical-sessions/presentation/dong.Google Scholar
- Clinton W. Smullen, Vidyabhushan Mohan, Anurag Nigam, Sudhanva Gurumurthi, and Mircea R. Stan. 2011. Relaxing non-volatility for fast and energy-efficient STT-RAM caches. In Proceedings of the IEEE 17th International Symposium on High Performance Computer Architecture (HPCA’11). IEEE Computer Society, Washington, DC, 50--61. Retrieved from http://dl.acm.org/citation.cfm?id=2014698.2014895.Google Scholar
- Jinglei Ren, Jishen Zhao, Samira Khan, Jongmoo Choi, Yongwei Wu, and Onur Mutlu. 2015. ThyNVM: Enabling software-transparent crash consistency in persistent memory systems. In Proceedings of the 48th IEEE/ACM International Symposium on Microarchitecture (MICRO’15). 672--685. DOI:http://dx.doi.org/10.1145/2830772.2830802Google Scholar
Digital Library
- Chen Liu and Chengmo Yang. 2015. Secure and durable (SEDURA): An integrated encryption and wear-leveling framework for PCM-based main memory. In Proceedings of the 16th ACM SIGPLAN/SIGBED Conference on Languages, Compilers and Tools for Embedded Systems (LCTES’15). ACM, New York, NY. DOI:http://dx.doi.org/10.1145/2670529.2754969Google Scholar
Digital Library
- Yiying Zhang, Jian Yang, Amirsaman Memaripour, and Steven Swanson. 2015. Mojim: A reliable and highly-available non-volatile memory system. In Proceedings of the 20th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS’15). ACM, New York, NY, 3--18. DOI:http://dx.doi.org/10.1145/2694344.2694370Google Scholar
Digital Library
- Duo Liu, Kan Zhong, Tianzheng Wang, Yi Wang, Zili Shao, Edwin Hsing-Mean Sha, and Jingling Xue. 2017. Durable address translation in PCM-Based flash storage systems. IEEE Trans. Parallel Distrib. Syst. 28, 2 (Feb. 2017), 475--490. DOI:http://dx.doi.org/10.1109/TPDS.2016.2586059Google Scholar
- Tianzheng Wang, Duo Liu, Yi Wang, and Zili Shao. 2015. Towards write-activity-aware page table management for non-volatile main memories. ACM Trans. Embed. Comput. Syst. 14, 2 (Feb. 2015). DOI:http://dx.doi.org/10.1145/2697394Google Scholar
Digital Library
- Daeyoung Lee and Hyunok Oh. 2013. A lifetime aware buffer assignment method for streaming applications on DRAM/PRAM hybrid memory. ACM Trans. Embed. Comput. Syst. 12, 1s (Mar. 2013). DOI:http://dx.doi.org/10.1145/2435227.2435232Google Scholar
Digital Library
- Steven Pelley, Peter M. Chen, and Thomas F. Wenisch. 2014. Memory persistency. In Proceeding of the 41st International Symposium on Computer Architecuture (ISCA’14). IEEE Press, Piscataway, NJ, 265--276. Retrieved from http://dl.acm.org/citation.cfm?id=2665671.2665712.Google Scholar
- Chen Pan, Mimi Xie, Chengmo Yang, Yiran Chen, and Jingtong Hu. 2017. Exploiting multiple write modes of nonvolatile main memory in embedded systems. ACM Trans. Embed. Comput. Syst. 16, 4 (May 2017). DOI:http://dx.doi.org/10.1145/3063130Google Scholar
Digital Library
- Cheng Chen, Qingsong Wei, Weng-Fai Wong, and Chundong Wang. 2019. NV-Journaling: Locality-aware journaling using byte-addressable non-volatile memory. IEEE Trans. Comput. 69, 2 (2019), 288--299. DOI:http://dx.doi.org/10.1109/TC.2019.2948004Google Scholar
Digital Library
- Lei Han, Zhaoyan Shen, Zili Shao, and Tao Li. 2018. Optimizing RAID/SSD controllers with lifetime extension for flash-based SSD array. In Proceedings of the 19th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES’18). ACM, New York, NY, 44--54. DOI:http://dx.doi.org/10.1145/3211332.3211338Google Scholar
Digital Library
- Vijay Chidambaram, Tushar Sharma, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau. 2012. Consistency without ordering. In Proceedings of the 10th USENIX Conference on File and Storage Technologies (FAST’12). USENIX Association, Berkeley, CA, 101--116. Retrieved from http://dl.acm.org/citation.cfm?id=2208461.2208470.Google Scholar
- Chundong Wang, Sudipta Chattopadhyay, and Gunavaran Brihadiswarn. 2019. Crash recoverable ARMv8-oriented B+-tree for byte-addressable persistent memory. In Proceedings of the 20th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES’19). ACM, New York, NY, 33--44. DOI:http://dx.doi.org/10.1145/3316482.3326358Google Scholar
Digital Library
- Adrian M. Caulfield, Arup De, Joel Coburn, Todor I. Mollow, Rajesh K. Gupta, and Steven Swanson. 2010. Moneta: A high-performance storage array architecture for next-generation, non-volatile memories. In Proceedings of the 43rd IEEE/ACM International Symposium on Microarchitecture (MICRO’43). IEEE Computer Society, Washington, DC, 385--395. DOI:http://dx.doi.org/10.1109/MICRO.2010.33Google Scholar
Digital Library
- Wikipedia. 2019. Compare-and-swap. Retrieved from https://en.wikipedia.org/wiki/Compare-and-swap.Google Scholar
- ARM Holdings. 2018. Release notes for Arm Compiler 6.10. Retrieved from https://en.wikipedia.org/wiki/Compare-and-swap. (March 2018).Google Scholar
- Phil Yang. 2019. Add 128-bit atomic compare exchange. Retrieved from http://patchwork.dpdk.org/patch/61468/.Google Scholar
- WikiChip. 2017. ARMv8.1. Retrieved from https://en.wikichip.org/wiki/arm/armv8.1.Google Scholar
- David A. Patterson and John L. Hennessy. 2016. Computer Organization and Design ARM Edition: The Hardware Software Interface. Morgan Kaufmann.Google Scholar
- openSUSE. 2018. openSUSE:AArch64. Retrieved from https://en.opensuse.org/openSUSE:AArch64.Google Scholar
- Everspin. 2018. Spin-transfer Torque MRAM Technology. Retrieved from https://www.everspin.com/spin-transfer-torque-mram-technology.Google Scholar
- Everspin. 2020. Everspin Technologies Announces Development of STT-MRAM for Industrial and IoT Applications. Retrieved from https://www.everspin.com/sites/default/files/pressdocs/Everspin__industrial_IoT_STTMRAM.pdf.Google Scholar
- Jimmy J. Kan, Chando Park, Chi Ching, Jaesoo Ahn, Yuan Xie, Mahendra Pakala, and Seung H. Kang. 2017. A study on practically unlimited endurance of STT-MRAM. IEEE Trans. Electron Dev. 64, 9 (2017), 3639--3646.Google Scholar
Cross Ref
- Ping Chi, Wang-Chien Lee, and Yuan Xie. 2014. Making B+-tree efficient in PCM-based main memory. In Proceedings of the International Symposium on Low Power Electronics and Design (ISLPED’14). ACM, New York, NY, 69--74. DOI:http://dx.doi.org/10.1145/2627369.2627630Google Scholar
Digital Library
- Mazen Alwadi, Aziz Mohaisen, and Amro Awad. 2019. Phoenix: Towards Persistently Secure, Recoverable, and NVM Friendly Tree of Counters. arxiv:cs.CR/1911.01922.Google Scholar
- Adrian M. Caulfield, Todor I. Mollov, Louis Alex Eisner, Arup De, Joel Coburn, and Steven Swanson. 2012. Providing safe, user space access to fast, solid state disks. In Proceedings of the 17th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS’12). ACM, New York, NY, 387--400. DOI:http://dx.doi.org/10.1145/2150976.2151017Google Scholar
Digital Library
Index Terms
Crab-tree: A Crash Recoverable B+-tree Variant for Persistent Memory with ARMv8 Architecture
Recommendations
Crash recoverable ARMv8-oriented B+-tree for byte-addressable persistent memory
LCTES 2019: Proceedings of the 20th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded SystemsThe byte-addressable non-volatile memory (NVM) promises persistent memory. Concretely, ARM processors have incorporated architectural supports to utilize NVM. In this paper, we consider tailoring the important B+-tree for NVM operated by a 64-bit ARMv8 ...
System evaluation of the Intel optane byte-addressable NVM
MEMSYS '19: Proceedings of the International Symposium on Memory SystemsByte-addressable non-volatile memory (NVM) features high density, DRAM comparable performance, and persistence. These characteristics position NVM as a promising new tier in the memory hierarchy. Nevertheless, NVM has asymmetric read and write ...
WOBTree: a write-optimized B+-tree for non-volatile memory
AbstractThe emergence of non-volatile memory (NVM) has introduced new opportunities for performance optimizations in existing storage systems. To better utilize its byte-addressability and near-DRAM performance, NVM can be attached on the memory bus and ...






Comments