Scalable NUMA-aware persistent B+-tree for non-volatile memory devices

Safdar Jamil, Abdul Salam, Awais Khan, Bernd Burgstaller, Sung Soon Park, Youngjae Kim

Research output: Contribution to journalArticlepeer-review

1 Citation (Scopus)


Emerging manycore servers with Intel DC persistent memory (DCPM) are equipped with hundreds of CPU cores on multiple CPU sockets. Such servers are designed to guarantee high performance and scalability. Several recent studies proposed persistent fault-tolerant indexes for DCPM. Fast & Fair (F&F) is the state-of-the-art concurrent variant of the B+-tree for DCPM. However, its adoption on manycore servers is hampered by scalability limitations due to lengthy, lock-based synchronization including structure modification operations. The lack of NUMA awareness induces further performance overhead from remote memory accesses. In this paper, we propose F3-tree, a concurrent, NUMA-aware and persistent future-based B+-tree for DCPM servers. F3-tree relies on per-thread local future objects and a global B+-tree. To introduce NUMA awareness and minimize remote memory accesses, F3-tree adopts per-socket dedicated asynchronous evaluation threads to checkpoint future objects to the global B+-tree. F3-tree employs an in-memory hash table to mitigate the read overhead of key searches over the future objects. We implemented F3-tree atop F&F and evaluated its performance on Linux using both synthetic and realistic workloads. Our evaluation shows that F3-tree outperforms F&F on average by 3.4× and 5× without and with NUMA awareness, respectively.

Original languageEnglish
Pages (from-to)2865-2881
Number of pages17
JournalCluster Computing
Issue number5
Publication statusPublished - 2023 Oct

Bibliographical note

Publisher Copyright:
© 2022, The Author(s), under exclusive licence to Springer Science+Business Media, LLC, part of Springer Nature.

All Science Journal Classification (ASJC) codes

  • Software
  • Computer Networks and Communications


Dive into the research topics of 'Scalable NUMA-aware persistent B+-tree for non-volatile memory devices'. Together they form a unique fingerprint.

Cite this