A Study of Synchronization Methods for Concurrent Size

Fuente: arXiv
Enregistré dans:
Détails bibliographiques
Auteurs principaux: Kas-Sharir, Hen, Sela, Gal, Petrank, Erez
Format: Preprint
Publié: 2025
Sujets:
Accès en ligne:
Tags: Ajouter un tag
Pas de tags, Soyez le premier à ajouter un tag!
_version_ 1866918065594171392
author Kas-Sharir, Hen
Sela, Gal
Petrank, Erez
author_facet Kas-Sharir, Hen
Sela, Gal
Petrank, Erez
contents The size of collections, maps, and data structures in general, constitutes a fundamental property. An implementation of the size method is required in most programming environments. Nevertheless, in a concurrent environment, integrating a linearizable concurrent size introduces a noticeable overhead on all operations of the data structure, even when the size method is not invoked during the execution. In this work we present a study of synchronization methods in an attempt to improve the performance of the data structure. In particular, we study a handshake technique that is commonly used with concurrent garbage collection, an optimistic technique, and a lock-based technique. Evaluation against the state-of-the-art size methodology demonstrates that the overhead can be significantly reduced by selecting the appropriate synchronization approach, but there is no one-size-fits-all method. Different scenarios call for different synchronization methods, as rigorously shown in this study. Nevertheless, our findings align with general trends in concurrent computing. In scenarios characterized by low contention, optimistic and lock-based approaches work best, whereas under high contention, the most effective solutions are the handshake approach and the wait-free approach.
format Preprint
id arxiv_https___arxiv_org_abs_2506_16350
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle A Study of Synchronization Methods for Concurrent Size
Kas-Sharir, Hen
Sela, Gal
Petrank, Erez
Distributed, Parallel, and Cluster Computing
The size of collections, maps, and data structures in general, constitutes a fundamental property. An implementation of the size method is required in most programming environments. Nevertheless, in a concurrent environment, integrating a linearizable concurrent size introduces a noticeable overhead on all operations of the data structure, even when the size method is not invoked during the execution. In this work we present a study of synchronization methods in an attempt to improve the performance of the data structure. In particular, we study a handshake technique that is commonly used with concurrent garbage collection, an optimistic technique, and a lock-based technique. Evaluation against the state-of-the-art size methodology demonstrates that the overhead can be significantly reduced by selecting the appropriate synchronization approach, but there is no one-size-fits-all method. Different scenarios call for different synchronization methods, as rigorously shown in this study. Nevertheless, our findings align with general trends in concurrent computing. In scenarios characterized by low contention, optimistic and lock-based approaches work best, whereas under high contention, the most effective solutions are the handshake approach and the wait-free approach.
title A Study of Synchronization Methods for Concurrent Size
topic Distributed, Parallel, and Cluster Computing
url https://arxiv.org/abs/2506.16350