Processing math: 100%
CAA: A Concurrent AA Tree via Logical ordering | IEEE Conference Publication | IEEE Xplore

CAA: A Concurrent AA Tree via Logical ordering


Abstract:

Efficient implementation of concurrent data structures is crucial for ensuring safe and efficient access to data in shared-memory environments. Maintaining height balance...Show More

Abstract:

Efficient implementation of concurrent data structures is crucial for ensuring safe and efficient access to data in shared-memory environments. Maintaining height balance within these concurrent structures in a multi-core setting is vital to prevent performance degradation or structural imbalances. Self-balancing trees play a key role in achieving consistent performance across various workloads, ensuring operations have logarithmic time complexity. This paper presents a concurrent implementation of the AA Tree using logical ordering, employing lazy synchronization to harmonize threads that perform concurrent operations on the shared AA tree. The paper discusses concurrent algorithm design for basic operations (insert(), remove(), and contains()) on the AA tree. We extensively analyze the CAA tree’s performance compared to state-of-the-art implementations across various workloads. Our CAA Tree implementation scales well with the number of threads and achieves an average speedup of 46.4 x over the sequential implementation when using 96 threads. Compared to concurrent implementations of AVL trees [2], Red-Black trees [3], Treaps [4], and Contention Adapting Search trees trees [5], the speedup is 2.1 \mathrm{x}, 1.6 \mathrm{x}, 1.6 \mathrm{x}, and 1.1 x, respectively.
Date of Conference: 08-10 July 2024
Date Added to IEEE Xplore: 08 October 2024
ISBN Information:

ISSN Information:

Conference Location: Chur, Switzerland

Contact IEEE to Subscribe

References

References is not available for this document.