Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3409964.3461820acmconferencesArticle/Chapter ViewAbstractPublication PagesspaaConference Proceedingsconference-collections
extended-abstract

PHPRX: An Efficient Hash Table for Persistent Memory

Published: 06 July 2021 Publication History

Abstract

Volatile media have dominated the realm of main memory on servers and desktop computers for decades. In 2019, Intel released the Optane Data Center Persistent Memory Module (DCPMM), which offers the capacity and persistence of block devices while providing the byte addressability and low latency of DRAM. These new memory modules allow programmers to develop data structures that can survive in main memory across crashes and power failures, without relying on secondary power sources such as batteries. This work presents the design of a persistent memory hash table data structure that incorporates several features to maximize efficiency: the locks for concurrency control are kept in volatile DRAM, an embedded memory allocator is used, a parallel table resize operation is implemented, and a mechanism is provided to incrementally expand the underlying memory-mapped file. We compare PHPRX experimentally against the Dash persistent memory hash table published recently by Lu et al., and demonstrate substantial speed-ups on an Intel Xeon server equipped with genuine Intel Optane DCPMM. Our performance advantage holds despite PHPRX using a space-efficient incremental approach to expanding the underlying memory-mapped file, as opposed to the much simpler static allocation approach used by Dash.

References

[1]
A. Memaripour, J. Izraelevitz, and S. Swanson. 2020. Pronto: Easy and Fast Persistence for Volatile Data Structures. In Proc. of the 25th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS'20). 789--806.
[2]
B. Lu, X. Hao, T. Wang, and E. Lo. 2020. Dash: Scalable Hashing on Persistent Memory. Proc. VLDB Endow. 13, 8 (2020), 1147--1161.
[3]
M. Nam, H. Cha, Y. Choi, S. H. Noh, B. Nam. 2019. Write-Optimized Dynamic Hashing for Persistent Memory. In Proc. of the 17th USENIX Conference on File and Storage Technologies (FAST'19). 31--44.
[4]
P. Zuo, Y. Hua, and J. Wu. 2018. Write-Optimized and High-Performance Hashing Index Scheme for Persistent Memory. In Proc. of the 13th USENIX Symposium on Operating Systems Design and Implementation (OSDI'19). 461--476.
[5]
S. K. Lee, J. Mohan, S. Kashyap, T. Kim, and V. Chidambaram. 2019. RECIPE: Converting Concurrent DRAM Indexes to Persistent-Memory Indexes. In Proc. of the 27th ACM Symposium on Operating Systems Principles (SOSP'19). 462--477.
[6]
T. David, R. Guerraoui, and V. Trigonakis. 2015. Asynchronized Concurrency: The Secret to Scaling Concurrent Search Data Structures. In Proc. of the 20th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS'15). 631--664.
[7]
T. David, R. Guerraoui, T. Che, and V. Trigonakis. 2014. Designing ASCY-compliant Concurrent Search Data Structures. (2014). Technical Report https://infoscience.epfl.ch/record/203822.
[8]
Z. Ma, E. H.-M. Sha, Q. Zhuge, R. Zhang, and S. Gu. 2020. Towards the design of efficient hash-based indexing scheme for growing databases on non-volatile memory. Future Generation Computer Systems 105 (April 2020), 1--12.

Cited By

View all
  • (2023)IcebergHT: High Performance Hash Tables Through Stability and Low AssociativityProceedings of the ACM on Management of Data10.1145/35887271:1(1-26)Online publication date: 30-May-2023

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SPAA '21: Proceedings of the 33rd ACM Symposium on Parallelism in Algorithms and Architectures
July 2021
463 pages
ISBN:9781450380706
DOI:10.1145/3409964
  • General Chair:
  • Kunal Agrawal,
  • Program Chair:
  • Yossi Azar
Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author.

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 06 July 2021

Check for updates

Author Tags

  1. concurrency
  2. data structures
  3. efficiency
  4. fault tolerance
  5. hash tables
  6. persistent memory
  7. scalability
  8. shared memory

Qualifiers

  • Extended-abstract

Funding Sources

  • NSERC

Conference

SPAA '21
Sponsor:

Acceptance Rates

Overall Acceptance Rate 447 of 1,461 submissions, 31%

Upcoming Conference

SPAA '25
37th ACM Symposium on Parallelism in Algorithms and Architectures
July 28 - August 1, 2025
Portland , OR , USA

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)15
  • Downloads (Last 6 weeks)0
Reflects downloads up to 27 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2023)IcebergHT: High Performance Hash Tables Through Stability and Low AssociativityProceedings of the ACM on Management of Data10.1145/35887271:1(1-26)Online publication date: 30-May-2023

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media