Nothing Special   »   [go: up one dir, main page]

skip to main content
research-article

Nap: Persistent Memory Indexes for NUMA Architectures

Published: 29 January 2022 Publication History

Abstract

We present Nap, a black-box approach that converts concurrent persistent memory (PM) indexes into non-uniform memory access (NUMA)-aware counterparts. Based on the observation that real-world workloads always feature skewed access patterns, Nap introduces a NUMA-aware layer (NAL) on the top of existing concurrent PM indexes, and steers accesses to hot items to this layer. The NAL maintains (1) per-node partial views in PM for serving insert/update/delete operations with failure atomicity and (2) a global view in DRAM for serving lookup operations. The NAL eliminates remote PM accesses to hot items without inducing extra local PM accesses. Moreover, to handle dynamic workloads, Nap adopts a fast NAL switch mechanism. We convert five state-of-the-art PM indexes using Nap. Evaluation on a four-node machine with Optane DC Persistent Memory shows that Nap can improve the throughput by up to 2.3× and 1.56× under write-intensive and read-intensive workloads, respectively.

References

[1]
2020. AutoNUMA: The Other Approach to NUMA Scheduling. Retrieved 01 Dec., 2020 from https://lwn.net/Articles/488709/.
[3]
2020. Implementation of P-Masstree and FAST_FAIR. Retrieved 01 Dec., 2020 from https://github.com/utsaslab/RECIPE/.
[4]
2020. Persistent Memory Development Kit. Retrieved 01 Dec., 2020 from https://pmem.io/pmdk/.
[5]
2020. PMDK Implementation of Clevel, CCEH and P-CLHT. Retrieved 01 Dec., 2020 from https://github.com/chenzhangyu/Clevel-Hashing/.
[6]
2020. Processor Counter Monitor (PCM). Retrieved 01 Dec., 2020 from https://github.com/opcm/pcm.
[7]
2020. Sequential Locks. Retrieved 01 Dec., 2020 from https://www.kernel.org/doc/html/latest/locking/seqlock.html.
[8]
2021. Intel 64 and IA-32 Architectures Optimization Reference Manual. Retrieved 15 Oct., 2021 from https://software.intel.com/sites/default/files/managed/9e/bc/64-ia-32-architectures-optimization-manual.pdf.
[10]
2021. Intel Xeon Processor Scalable Family Technical Overview. Retrieved 15 Oct., 2021 from https://software.intel.com/content/www/us/en/develop/articles/intel-xeon-processor-scalable-family-technical-overview.html.
[11]
Reto Achermann, Ashish Panwar, Abhishek Bhattacharjee, Timothy Roscoe, and Jayneel Gandhi. 2020. Mitosis: Transparently self-replicating page-tables for large-memory machines. In Proceedings of the 25th International Conference on Architectural Support for Programming Languages and Operating Systems. Association for Computing Machinery, New York, NY, 283–300. DOI:https://doi.org/10.1145/3373376.3378468
[12]
Thomas E. Anderson, Marco Canini, Jongyul Kim, Dejan Kostić, Youngjin Kwon, Simon Peter, Waleed Reda, Henry N. Schuh, and Emmett Witchel. 2020. Assise: Performance and availability via client-local NVM in a distributed file system. In Proceedings of the 14th USENIX Symposium on Operating Systems Design and Implementation. USENIX Association, 1011–1027. Retrieved from https://www.usenix.org/conference/osdi20/presentation/anderson.
[13]
Berk Atikoglu, Yuehai Xu, Eitan Frachtenberg, Song Jiang, and Mike Paleczny. 2012. Workload analysis of a large-scale key-value store. In Proceedings of the 12th ACM SIGMETRICS/PERFORMANCE Joint International Conference on Measurement and Modeling of Computer Systems. Association for Computing Machinery, New York, NY, 53–64. DOI:https://doi.org/10.1145/2254756.2254766
[14]
Ankit Bhardwaj, Chinmay Kulkarni, Reto Achermann, Irina Calciu, Sanidhya Kashyap, Ryan Stutsman, Amy Tai, and Gerd Zellweger. 2021. NrOS: Effective replication and sharing in an operating system. In Proceedings of the 15th USENIX Symposium on Operating Systems Design and Implementation. USENIX Association.
[15]
Irina Calciu, Siddhartha Sen, Mahesh Balakrishnan, and Marcos K. Aguilera. 2017. Black-box concurrent data structures for NUMA architectures. In Proceedings of the 22nd International Conference on Architectural Support for Programming Languages and Operating Systems. Association for Computing Machinery, New York, NY, 207–221. DOI:https://doi.org/10.1145/3037697.3037721
[16]
Zhichao Cao, Siying Dong, Sagar Vemuri, and David H.C. Du. 2020. Characterizing, modeling, and benchmarking RocksDB key-value workloads at Facebook. In Proceedings of the 18th USENIX Conference on File and Storage Technologies. USENIX Association, Santa Clara, CA, 209–223. Retrieved from https://www.usenix.org/conference/fast20/presentation/cao-zhichao.
[17]
Milind Chabbi, Michael Fagan, and John Mellor-Crummey. 2015. High performance locks for multi-level NUMA systems. In Proceedings of the 20th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming. Association for Computing Machinery, New York, NY, 215–226. DOI:https://doi.org/10.1145/2688500.2688503
[18]
Jiqiang Chen, Liang Chen, Sheng Wang, Guoyun Zhu, Yuanyuan Sun, Huan Liu, and Feifei Li. 2020. HotRing: A hotspot-aware in-memory key-value store. In Proceedings of the 18th USENIX Conference on File and Storage Technologies. USENIX Association, Santa Clara, CA, 239–252. Retrieved from https://www.usenix.org/conference/fast20/presentation/chen-jiqiang.
[19]
Shimin Chen and Qin Jin. 2015. Persistent B\(^+\)-trees in non-volatile main memory. Proceedings of the VLDB Endowment 8, 7 (Feb. 2015), 786–797. DOI:https://doi.org/10.14778/2752939.2752947
[20]
Youmin Chen, Youyou Lu, Kedong Fang, Qing Wang, and Jiwu Shu. 2020. uTree: A persistent B+-Tree with low tail latency. Proceedings of the VLDB Endowment 13, 12 (July 2020), 2634–2648. DOI:https://doi.org/10.14778/3407790.3407850
[21]
Youmin Chen, Youyou Lu, Fan Yang, Qing Wang, Yang Wang, and Jiwu Shu. 2020. FlatStore: An efficient log-structured key-value storage engine for persistent memory. In Proceedings of the 25th International Conference on Architectural Support for Programming Languages and Operating Systems. Association for Computing Machinery, New York, NY, 1077–1091. DOI:https://doi.org/10.1145/3373376.3378515
[22]
Youmin Chen, Youyou Lu, Bohong Zhu, Andrea C. Arpaci-Dusseau, Remzi H. Arpaci-Dusseau, and Jiwu Shu. 2021. Scalable persistent memory file system with kernel-userspace collaboration. In Proceedings of the 19th USENIX Conference on File and Storage Technologies. USENIX Association, 81–95. Retrieved from https://www.usenix.org/conference/fast21/presentation/chen-youmin.
[23]
Zhangyu Chen, Yu Hua, Bo Ding, and Pengfei Zuo. 2020. Lock-free concurrent level hashing for persistent memory. In Proceedings of the 2020 USENIX Annual Technical Conference. USENIX Association, 799–812. Retrieved from https://www.usenix.org/conference/atc20/presentation/chen.
[24]
Nachshon Cohen, David T. Aksun, Hillel Avni, and James R. Larus. 2019. Fine-grain checkpointing with in-cache-line logging. In Proceedings of the 24th International Conference on Architectural Support for Programming Languages and Operating Systems. Association for Computing Machinery, New York, NY, 441–454. DOI:https://doi.org/10.1145/3297858.3304046
[25]
Brian F. Cooper, Adam Silberstein, Erwin Tam, Raghu Ramakrishnan, and Russell Sears. 2010. Benchmarking cloud serving systems with YCSB. In Proceedings of the 1st ACM Symposium on Cloud Computing. Association for Computing Machinery, New York, NY, 143–154. DOI:https://doi.org/10.1145/1807128.1807152
[26]
Graham Cormode and S. Muthukrishnan. 2005. An improved data stream summary: The count-min sketch and its applications. Journal of Algorithms 55, 1 (April 2005), 58–75. DOI:https://doi.org/10.1016/j.jalgor.2003.12.001
[27]
Björn Daase, Lars Jonas Bollmeier, Lawrence Benson, and Tilmann Rabl. 2021. Maximizing persistent memory bandwidth utilization for OLAP workloads. In Proceedings of the 2021 International Conference on Management of Data (SIGMOD’21). ACM.
[28]
Henry Daly, A. Hassan, M. Spear, and R. Palmieri. 2018. NUMASK: High performance scalable skip list for NUMA. In Proceedings of the 32nd International Symposium on Distributed Computing.
[29]
Mohammad Dashti, Alexandra Fedorova, Justin Funston, Fabien Gaud, Renaud Lachaize, Baptiste Lepers, Vivien Quema, and Mark Roth. 2013. Traffic management: A holistic approach to memory placement on NUMA systems. In Proceedings of the 18th International Conference on Architectural Support for Programming Languages and Operating Systems. Association for Computing Machinery, New York, NY, 381–394. DOI:https://doi.org/10.1145/2451116.2451157
[30]
Tudor David, Rachid Guerraoui, and Vasileios Trigonakis. 2015. Asynchronized concurrency: The secret to scaling concurrent search data structures. In Proceedings of the 20th International Conference on Architectural Support for Programming Languages and Operating Systems. Association for Computing Machinery, New York, NY, 631–644. DOI:https://doi.org/10.1145/2694344.2694359
[31]
Dave Dice, Virendra J. Marathe, and Nir Shavit. 2011. Flat-combining NUMA locks. In Proceedings of the 23rd Annual ACM Symposium on Parallelism in Algorithms and Architectures. Association for Computing Machinery, New York, NY, 65–74. DOI:https://doi.org/10.1145/1989493.1989502
[32]
David Dice, Virendra J. Marathe, and Nir Shavit. 2015. Lock cohorting: A general technique for designing NUMA locks. ACM Transactions on Parallel Computing 1, 2, (Feb. 2015), 42 pages. DOI:https://doi.org/10.1145/2686884
[33]
Diego Didona and Willy Zwaenepoel. 2019. Size-aware sharding for improving tail latencies in in-memory key-value stores. In Proceedings of the 16th USENIX Conference on Networked Systems Design and Implementation. USENIX Association, 79–93.
[34]
Mingkai Dong, Heng Bu, Jifei Yi, Benchao Dong, and Haibo Chen. 2019. Performance and protection in the ZoFS user-space NVM file system. In Proceedings of the 27th ACM Symposium on Operating Systems Principles. Association for Computing Machinery, New York, NY, 478–493. DOI:https://doi.org/10.1145/3341301.3359637
[35]
Bin Fan, Hyeontaek Lim, David G. Andersen, and Michael Kaminsky. 2011. Small cache, big effect: Provable load balancing for randomly partitioned cluster services. In Proceedings of the 2nd ACM Symposium on Cloud Computing. Association for Computing Machinery, New York, NY, Article 23, 12 pages. DOI:https://doi.org/10.1145/2038916.2038939
[36]
Keir Fraser. 2004. Practical Lock-Freedom. Ph. D. Dissertation. University of Cambridge, UK. Retrieved from http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.599193.
[37]
Michal Friedman, Naama Ben-David, Yuanhao Wei, Guy E. Blelloch, and Erez Petrank. 2020. NVTraverse: In NVRAM data structures, the destination is more important than the journey. In Proceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation. Association for Computing Machinery, New York, NY, 377–392. DOI:https://doi.org/10.1145/3385412.3386031
[38]
Michal Friedman, Erez Petrank, and Pedro Ramalhete. 2021. Mirror: making lock-free data structures persistent. In Proceedings of the 42nd ACM SIGPLAN International Conference on Programming Language Design and Implementation Association for Computing Machinery, New York, NY, 1218–1232. DOI:https://doi.org/10.1145/3453483.3454105
[39]
Jinyu Gu, Qianqian Yu, Xiayang Wang, Zhaoguo Wang, Binyu Zang, Haibing Guan, and Haibo Chen. 2019. Pisces: A scalable and efficient persistent transactional memory. In Proceedings of the 2019 USENIX Conference on Usenix Annual Technical Conference. USENIX Association, 913–928.
[40]
Swapnil Haria, Mark D. Hill, and Michael M. Swift. 2020. MOD: Minimally ordered durable datastructures for persistent memory. In Proceedings of the 25th International Conference on Architectural Support for Programming Languages and Operating Systems. Association for Computing Machinery, New York, NY, 775–788. DOI:https://doi.org/10.1145/3373376.3378472
[41]
Danny Hendler, Itai Incze, Nir Shavit, and Moran Tzafrir. 2010. Flat combining and the synchronization-parallelism tradeoff. In Proceedings of the 22nd Annual ACM Symposium on Parallelism in Algorithms and Architectures. Association for Computing Machinery, New York, NY, 355–364. DOI:https://doi.org/10.1145/1810479.1810540
[42]
Qi Huang, Helga Gudmundsdottir, Ymir Vigfusson, Daniel A. Freedman, Ken Birman, and Robbert van Renesse. 2014. Characterizing load imbalance in real-world networked caches. In Proceedings of the 13th ACM Workshop on Hot Topics in Networks. Association for Computing Machinery, New York, NY, 1–7. DOI:https://doi.org/10.1145/2670518.2673882
[43]
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. USENIX Association, Oakland, CA, 187–200. Retrieved from https://www.usenix.org/conference/fast18/presentation/hwang.
[44]
Xin Jin, Xiaozhou Li, Haoyu Zhang, Robert Soulé, Jeongkeun Lee, Nate Foster, Changhoon Kim, and Ion Stoica. 2017. NetCache: Balancing key-value stores with fast in-network caching. In Proceedings of the 26th Symposium on Operating Systems Principles. Association for Computing Machinery, New York, NY, 121–136. DOI:https://doi.org/10.1145/3132747.3132764
[45]
Rohan Kadekodi, Se Kwon Lee, Sanidhya Kashyap, Taesoo Kim, Aasheesh Kolli, and Vijay Chidambaram. 2019. SplitFS: Reducing software overhead in file systems for persistent memory. In Proceedings of the 27th ACM Symposium on Operating Systems Principles. Association for Computing Machinery, New York, NY, 494–508. DOI:https://doi.org/10.1145/3341301.3359631
[46]
Anuj Kalia, David Andersen, and Michael Kaminsky. 2020. Challenges and solutions for fast remote persistent memory access. In Proceedings of the 11th ACM Symposium on Cloud Computing. Association for Computing Machinery, New York, NY, 105–119. DOI:https://doi.org/10.1145/3419111.3421294
[47]
Anuj Kalia, Michael Kaminsky, and David G. Andersen. 2019. Datacenter RPCs can be general and fast. In Proceedings of the 16th USENIX Conference on Networked Systems Design and Implementation. USENIX Association, 1–16.
[48]
Sanidhya Kashyap, Changwoo Min, Kangnyeon Kim, and Taesoo Kim. 2018. A scalable ordering primitive for multicore machines. In Proceedings of the 13th EuroSys Conference. Association for Computing Machinery, New York, NY, Article 34, 15 pages. DOI:https://doi.org/10.1145/3190508.3190510
[49]
Sanidhya Kashyap, Changwoo Min, and Taesoo Kim. 2017. Scalable NUMA-aware blocking synchronization primitives. In Proceedings of the 2017 USENIX Conference on Usenix Annual Technical Conference. USENIX Association, 603–615.
[50]
Jonghyeon Kim, Wonkyo Choe, and Jeongseob Ahn. 2021. Exploring the design space of page management for multi-tiered memory systems. In Proceedings of the 2021 USENIX Annual Technical Conference. USENIX Association, 715–728. Retrieved from https://www.usenix.org/conference/atc21/presentation/kim-jonghyeon.
[51]
Wook-Hee Kim, R. Madhava Krishnan, Xinwei Fu, Sanidhya Kashyap, and Changwoo Min. 2021. PACTree: A high performance persistent range index using PAC guidelines. In Proceedings of the ACM SIGOPS 28th Symposium on Operating Systems Principles. Association for Computing Machinery, New York, NY, 424–439. DOI:https://doi.org/10.1145/3477132.3483589
[52]
R. Madhava Krishnan, Jaeho Kim, Ajit Mathew, Xinwei Fu, Anthony Demeri, Changwoo Min, and Sudarsun Kannan. 2020. Durable transactional memory can scale with timestone. In Proceedings of the 25th International Conference on Architectural Support for Programming Languages and Operating Systems. Association for Computing Machinery, New York, NY, 335–349. DOI:https://doi.org/10.1145/3373376.3378483
[53]
R. Madhava Krishnan, Wook-Hee Kim, Xinwei Fu, Sumit Kumar Monga, Hee Won Lee, Minsung Jang, Ajit Mathew, and Changwoo Min. 2021. TIPS: Making volatile index structures persistent with DRAM-NVMM tiering. In Proceedings of the 2021 USENIX Conference on Usenix Annual Technical Conference. USENIX Association.
[54]
Se Kwon Lee, K. Hyun Lim, Hyunsub Song, Beomseok Nam, and Sam H. Noh. 2017. WORT: Write optimal radix tree for persistent memory storage systems. In Proceedings of the 15th Usenix Conference on File and Storage Technologies. USENIX Association, 257–270.
[55]
Se Kwon Lee, Jayashree Mohan, Sanidhya Kashyap, Taesoo Kim, and Vijay Chidambaram. 2019. Recipe: Converting concurrent DRAM indexes to persistent-memory indexes. In Proceedings of the 27th ACM Symposium on Operating Systems Principles. Association for Computing Machinery, New York, NY, 462–477. DOI:https://doi.org/10.1145/3341301.3359635
[56]
Xiaozhou Li, Raghav Sethi, Michael Kaminsky, David G. Andersen, and Michael J. Freedman. 2016. Be fast, cheap and in control with SwitchKV. In Proceedings of the 13th Usenix Conference on Networked Systems Design and Implementation. USENIX Association, 31–44.
[57]
Hyeontaek Lim, Michael Kaminsky, and David G. Andersen. 2017. Cicada: Dependably fast multi-core in-memory transactions. In Proceedings of the 2017 ACM International Conference on Management of Data. Association for Computing Machinery, New York, NY, 21–35. DOI:https://doi.org/10.1145/3035918.3064015
[58]
Jihang Liu, Shimin Chen, and Lujun Wang. 2020. LB+Trees: Optimizing persistent index performance on 3DXPoint memory. Proceedings of the VLDB Endowment 13, 7 (March 2020), 1078–1090. DOI:https://doi.org/10.14778/3384345.3384355
[59]
Zaoxing Liu, Zhihao Bai, Zhenming Liu, Xiaozhou Li, Changhoon Kim, Vladimir Braverman, Xin Jin, and Ion Stoica. 2019. DistCache: Provable load balancing for large-scale storage systems with distributed caching. In Proceedings of the 17th USENIX Conference on File and Storage Technologies. USENIX Association, 143–157.
[60]
Baotong Lu, Xiangpeng Hao, Tianzheng Wang, and Eric Lo. 2020. Dash: Scalable hashing on persistent memory. Proceedings of the VLDB Endowment 13, 10 (April 2020), 1147–1161. DOI:https://doi.org/10.14778/3389133.3389134
[61]
Shaonan Ma, Kang Chen, Shimin Chen, Mengxing Liu, Jianglang Zhu, Hongbo Kang, and Yongwei Wu. 2021. ROART: Range-query optimized persistent ART. In Proceedings of the 19th USENIX Conference on File and Storage Technologies. USENIX Association, 1–16. Retrieved from https://www.usenix.org/conference/fast21/presentation/ma.
[62]
Yandong Mao, Eddie Kohler, and Robert Tappan Morris. 2012. Cache craftiness for fast multicore key-value storage. In Proceedings of the 7th ACM European Conference on Computer Systems. Association for Computing Machinery, New York, NY, 183–196. DOI:https://doi.org/10.1145/2168836.2168855
[63]
Ajit Mathew and Changwoo Min. 2020. HydraList: A scalable in-memory index using asynchronous updates and partial replication. Proceedings of the VLDB Endowment 13, 9 (May 2020), 1332–1345. DOI:https://doi.org/10.14778/3397230.3397232
[64]
Amirsaman Memaripour, Joseph Izraelevitz, and Steven Swanson. 2020. Pronto: Easy and fast persistence for volatile data structures. In Proceedings of the 25th International Conference on Architectural Support for Programming Languages and Operating Systems. Association for Computing Machinery, New York, NY, 789–806. DOI:https://doi.org/10.1145/3373376.3378456
[65]
Moohyeon Nam, Hokeun Cha, Young ri Choi, Sam H. Noh, and Beomseok Nam. 2019. Write-optimized dynamic hashing for persistent memory. In Proceedings of the 17th USENIX Conference on File and Storage Technologies. USENIX Association, Boston, MA, 31–44. Retrieved from https://www.usenix.org/conference/fast19/presentation/nam.
[66]
Faisal Nawab, J. Izraelevitz, T. Kelly, C. B. Morrey, Dhruva R. Chakrabarti, and M. Scott. 2017. Dalí: A periodically persistent hash map. In Proceedings of the 31st International Symposium on Distributed Computing.
[67]
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 2016 International Conference on Management of Data. Association for Computing Machinery, New York, NY, 371–386. DOI:https://doi.org/10.1145/2882903.2915251
[68]
Ashish Panwar, Reto Achermann, Arkaprava Basu, Abhishek Bhattacharjee, K. Gopinath, and Jayneel Gandhi. 2021. Fast local page-tables for virtualized NUMA servers with VMitosis. In Proceedings of the 26th ACM International Conference on Architectural Support for Programming Languages and Operating Systems. Association for Computing Machinery, New York, NY, 194–210. DOI:https://doi.org/10.1145/3445814.3446709
[69]
Ivy B. Peng, Maya B. Gokhale, and Eric W. Green. 2019. System evaluation of the intel optane byte-addressable NVM. In Proceedings of the International Symposium on Memory Systems. Association for Computing Machinery, New York, NY, 304–315. DOI:https://doi.org/10.1145/3357526.3357568
[70]
Z. Radovic and E. Hagersten. 2003. Hierarchical backoff locks for nonuniform communication architectures. In Proceedings of the 9th International Symposium on High-Performance Computer Architecture. 241–252. DOI:https://doi.org/10.1109/HPCA.2003.1183542
[71]
Jiwu Shu, Youmin Chen, Qing Wang, Bohong Zhu, Junru Li, and Youyou Lu. 2020. TH-DPMS: Design and implementation of an RDMA-enabled distributed persistent memory storage system. ACM Transactions on Storage 16, 4, (Oct. 2020), 31 pages. DOI:https://doi.org/10.1145/3412852
[72]
Igor Smolyar, Alex Markuze, Boris Pismenny, Haggai Eran, Gerd Zellweger, Austin Bolen, Liran Liss, Adam Morrison, and Dan Tsafrir. 2020. IOctopus: Outsmarting nonuniform DMA. In Proceedings of the 25th International Conference on Architectural Support for Programming Languages and Operating Systems. Association for Computing Machinery, New York, NY, 101–115. DOI:https://doi.org/10.1145/3373376.3378509
[73]
Stephen Tu, Wenting Zheng, Eddie Kohler, Barbara Liskov, and Samuel Madden. 2013. Speedy transactions in multicore in-memory databases. In Proceedings of the 24th ACM Symposium on Operating Systems Principles. Association for Computing Machinery, New York, NY, 18–32. DOI:https://doi.org/10.1145/2517349.2522713
[74]
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. USENIX Association, 5.
[75]
Ying Wang, Dejun Jiang, and Jin Xiong. 2020. NUMA-aware thread migration for high performance NVMM file systems. In Proceedings of the 36th International Conference on Massive Storage Systems and Technology.
[76]
Xingda Wei, Xiating Xie, Rong Chen, Haibo Chen, and Binyu Zang. 2021. Characterizing and optimizing remote persistent memory with RDMA and NVM. In Proceedings of the 2021 USENIX Annual Technical Conference. USENIX Association, 523–536. Retrieved from https://www.usenix.org/conference/atc21/presentation/wei.
[77]
Jian Xu, Juno Kim, Amirsaman Memaripour, and Steven Swanson. 2019. Finding and fixing performance pathologies in persistent memory software stacks. In Proceedings of the 24th International Conference on Architectural Support for Programming Languages and Operating Systems. Association for Computing Machinery, New York, NY, 427–439. DOI:https://doi.org/10.1145/3297858.3304077
[78]
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. USENIX Association, Santa Clara, CA, 323–338. Retrieved from https://www.usenix.org/conference/fast16/technical-sessions/presentation/xu.
[79]
Jian Yang, Juno Kim, Morteza Hoseinzadeh, Joseph Izraelevitz, and Steve Swanson. 2020. An empirical guide to the behavior and use of scalable persistent memory. In Proceedings of the 18th USENIX Conference on File and Storage Technologies. USENIX Association, Santa Clara, CA, 169–182. Retrieved from https://www.usenix.org/conference/fast20/presentation/yang.
[80]
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. USENIX Association, 167–181.
[81]
Juncheng Yang, Yao Yue, and K. V. Rashmi. 2020. A large scale analysis of hundreds of in-memory cache clusters at Twitter. In Proceedings of the 14th USENIX Symposium on Operating Systems Design and Implementation. USENIX Association, 191–208. Retrieved from https://www.usenix.org/conference/osdi20/presentation/yang.
[82]
Wen Zhang, Scott Shenker, and Irene Zhang. 2020. Persistent state machines for recoverable in-memory storage systems with NVRam. In Proceedings of the 14th USENIX Symposium on Operating Systems Design and Implementation. USENIX Association, 1029–1046. Retrieved from https://www.usenix.org/conference/osdi20/presentation/zhang-wen.
[83]
Xinjing Zhou, Lidan Shou, Ke Chen, Wei Hu, and Gang Chen. 2019. DPTree: Differential indexing for persistent memory. Proceedings of the VLDB Endowment 13, 4 (Dec. 2019), 421–434. DOI:https://doi.org/10.14778/3372716.3372717
[84]
Pengfei Zuo, Yu Hua, and Jie Wu. 2018. Write-optimized and high-performance hashing index scheme for persistent memory. In Proceedings of the 13th USENIX Symposium on Operating Systems Design and Implementation. USENIX Association, Carlsbad, CA, 461–476. Retrieved from https://www.usenix.org/conference/osdi18/presentation/zuo.

Cited By

View all
  • (2024)Bridging the Domain Gap in Scene Flow Estimation via Hierarchical Smoothness RefinementACM Transactions on Multimedia Computing, Communications, and Applications10.1145/366182320:8(1-21)Online publication date: 12-Jun-2024
  • (2024)High Fidelity Makeup via 2D and 3D Identity Preservation NetACM Transactions on Multimedia Computing, Communications, and Applications10.1145/365647520:8(1-24)Online publication date: 13-Jun-2024
  • (2024)RAST: Restorable Arbitrary Style TransferACM Transactions on Multimedia Computing, Communications, and Applications10.1145/363877020:5(1-21)Online publication date: 22-Jan-2024
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Transactions on Storage
ACM Transactions on Storage  Volume 18, Issue 1
February 2022
245 pages
ISSN:1553-3077
EISSN:1553-3093
DOI:10.1145/3512348
  • Editor:
  • Sam H. Noh
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 29 January 2022
Accepted: 01 December 2021
Revised: 01 December 2021
Received: 01 October 2021
Published in TOS Volume 18, Issue 1

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Persistent memory
  2. non-uniform memory access
  3. indexes

Qualifiers

  • Research-article
  • Refereed

Funding Sources

  • National Key Research & Development Program of China
  • National Natural Science Foundation of China
  • Huawei

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)126
  • Downloads (Last 6 weeks)6
Reflects downloads up to 13 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Bridging the Domain Gap in Scene Flow Estimation via Hierarchical Smoothness RefinementACM Transactions on Multimedia Computing, Communications, and Applications10.1145/366182320:8(1-21)Online publication date: 12-Jun-2024
  • (2024)High Fidelity Makeup via 2D and 3D Identity Preservation NetACM Transactions on Multimedia Computing, Communications, and Applications10.1145/365647520:8(1-24)Online publication date: 13-Jun-2024
  • (2024)RAST: Restorable Arbitrary Style TransferACM Transactions on Multimedia Computing, Communications, and Applications10.1145/363877020:5(1-21)Online publication date: 22-Jan-2024
  • (2024)HARR: Learning Discriminative and High-Quality Hash Codes for Image RetrievalACM Transactions on Multimedia Computing, Communications, and Applications10.1145/362716220:5(1-23)Online publication date: 22-Jan-2024
  • (2024)Efficient Crowd Counting via Dual Knowledge DistillationIEEE Transactions on Image Processing10.1109/TIP.2023.334360933(569-583)Online publication date: 1-Jan-2024
  • (2024)A Scalable and Write-Optimized Disaggregated B+-Tree With Adaptive Cache AssistanceIEEE Transactions on Cloud Computing10.1109/TCC.2024.343747212:4(1074-1087)Online publication date: Oct-2024
  • (2023)SALI: A Scalable Adaptive Learned Index Framework based on Probability ModelsProceedings of the ACM on Management of Data10.1145/36267521:4(1-25)Online publication date: 12-Dec-2023
  • (2023)Deep Learning for Logo Detection: A SurveyACM Transactions on Multimedia Computing, Communications, and Applications10.1145/361130920:3(1-23)Online publication date: 23-Oct-2023
  • (2023)Marlin: A Concurrent and Write-Optimized B+-tree Index on Disaggregated MemoryProceedings of the 52nd International Conference on Parallel Processing10.1145/3605573.3605576(695-704)Online publication date: 13-Sep-2023
  • (2023)Roadside Unit-based Unknown Object Detection in Adverse Weather Conditions for Smart Internet of VehiclesACM Transactions on Management Information Systems10.1145/355492313:4(1-21)Online publication date: 3-Jan-2023
  • Show More Cited By

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Full Text

View this article in Full Text.

Full Text

HTML Format

View this article in HTML Format.

HTML Format

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media