• 中国精品科技期刊
  • CCF推荐A类中文期刊
  • 计算领域高质量科技期刊T1类
Advanced Search
Wang Qing, Zhu Bohong, Shu Jiwu. A Multicore-Friendly Persistent Memory Key-Value Store[J]. Journal of Computer Research and Development, 2021, 58(2): 397-405. DOI: 10.7544/issn1000-1239.2021.20200381
Citation: Wang Qing, Zhu Bohong, Shu Jiwu. A Multicore-Friendly Persistent Memory Key-Value Store[J]. Journal of Computer Research and Development, 2021, 58(2): 397-405. DOI: 10.7544/issn1000-1239.2021.20200381

A Multicore-Friendly Persistent Memory Key-Value Store

More Information
  • Published Date: January 31, 2021
  • Compared with traditional memory, i.e., DRAM, persistent memory has the characteristics of large capacity and non-volatility, which brings new opportunities for building large-scale persistent memory key-value store systems. However, designing a persistent memory key-value store under a multicore server architecture faces many challenges, including CPU cache thrash due to concurrency control, the consumption and competition of limited write bandwidth for persistent memory, and aggravated conflicts between threads caused by high latency of persistent memory. In this paper, MPKV, a multicore-friendly persistent memory key-value store is proposed. By designing efficient concurrency control methods and reducing write operations to persistent memory, the system’s multicore concurrency performance is fully improved. To avoid the extra persistent memory write bandwidth consumption caused by lock resources, MPKV introduces a volatile lock management mechanism to separate write lock resources from indexes and maintain them separately in DRAM. To ensure crash consistency and improve concurrent query performance, MPKV introduces a two-phase atomic write mechanism, which uses the atomic write operation instructions provided by the CPU to atomically switch the system from one consistent state to another consistent state, and further supports lock-free query. Based on the volatile lock management mechanism, MPKV also introduces a concurrent write elimination mechanism to improve the efficiency of concurrency between update operations. When two conflicting update operations occur, the concurrent write elimination mechanism allows one of the operations to return directly without any persistent memory allocation and write. Experiments show that MPKV has better performance and multicore scalability than pmemkv. Specifically, in the 18-thread environment, the throughput of MPKV reaches 1.7 to 6.2 times of pmemkv.
  • Related Articles

    [1]Jiang Tianyang, Zhang Guangyan, Li Zhiyue. Survey on Concurrency Control Protocols of In-Memory Transactions[J]. Journal of Computer Research and Development, 2022, 59(4): 721-736. DOI: 10.7544/issn1000-1239.20210231
    [2]Cai Changxing, Du Yajuan, Zhou Taiyu. Endurance Aware Out-of-Place Update for Persistent Memory[J]. Journal of Computer Research and Development, 2022, 59(3): 553-567. DOI: 10.7544/issn1000-1239.20210541
    [3]Yang Fan, Li Fei, Shu Jiwu. Survey on Secure Persistent Memory Storage[J]. Journal of Computer Research and Development, 2020, 57(5): 912-927. DOI: 10.7544/issn1000-1239.2020.20190820
    [4]Chen Bo, Lu Youyou, Cai Tao, Chen Youmin, Tu Yaofeng, Shu Jiwu. A Consistency Mechanism for Distributed Persistent Memory File System[J]. Journal of Computer Research and Development, 2020, 57(3): 660-667. DOI: 10.7544/issn1000-1239.2020.20190074
    [5]Wan Hu, Xu Yuanchao, Yan Junfeng, Sun Fengyun, Zhang Weigong. Mitigating Log Cost through Non-Volatile Memory and Checkpoint Optimization[J]. Journal of Computer Research and Development, 2015, 52(6): 1351-1361. DOI: 10.7544/issn1000-1239.2015.20150171
    [6]Sun Xuejiao and Liu Jinglei. On the Satisfiability and Consistency for CP-nets[J]. Journal of Computer Research and Development, 2012, 49(4): 754-762.
    [7]Wang Yongji, Wu Jingzheng, Ding Liping, Zeng Haitao. Detecion Approach for Covert Channel Based on Concurrency Conflict Interval Time[J]. Journal of Computer Research and Development, 2011, 48(8): 1542-1553.
    [8]Dang Depeng, Zhou Lizhu. A Serializable Concurrency Control Protocol in Wireless Broadcast Enviroments[J]. Journal of Computer Research and Development, 2006, 43(7): 1280-1284.
    [9]Hao Zhongxiao, Han Qilong. Real-Time Multiversion Concurrency Control Based on Validation Factor[J]. Journal of Computer Research and Development, 2006, 43(3): 522-527.
    [10]Wang Qiang, Wang Hongan, Jin Hong, Fu Yong, and Dai Guozhong. A Concurrency Control Protocol for Scheduling Mixed Real-Time Transactions[J]. Journal of Computer Research and Development, 2005, 42(1): 18-29.

Catalog

    Article views (788) PDF downloads (426) Cited by()

    /

    DownLoad:  Full-Size Img  PowerPoint
    Return
    Return