Abstract
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 language | English |
---|---|
Pages (from-to) | 2865-2881 |
Number of pages | 17 |
Journal | Cluster Computing |
Volume | 26 |
Issue number | 5 |
DOIs | |
Publication status | Published - 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