arXiv · 1906.00490
Mutable Locks: Combining the Best of Spin and Sleep Locks
Abstract
In this article we present Mutable Locks, a synchronization construct with the same execution semantic of traditional locks (such as spin locks or sleep locks), but with a self-tuned optimized trade off between responsiveness---in the access to a just released critical section---and CPU-time usage during threads' wait phases. It tackles the need for modern synchronization supports, in the era of multi-core machines, whose runtime behavior should be optimized along multiple dimensions (performance vs resource consumption) with no intervention by the application programmer. Our proposal is intended for exploitation in generic concurrent applications where scarce or none knowledge is available about the underlying software/hardware stack and the actual workload, an adverse scenario for static choices between spinning and sleeping faced by mutable locks just thanks to their hybrid waiting phases and self-tuning capabilities.
Explore related subjects
Keep this discovery
Explore connections, maps & timelines
Romolo Marotta, Davide Tiriticco, Pierangelo Di Sanzo, Alessandro Pellegrini, Bruno Ciciani, Francesco Quaglia. 2019-06-14. Mutable Locks: Combining the Best of Spin and Sleep Locks. https://doi.org/10.1002/cpe.5858
Cite the original work for its findings. Save a collection to share your selection of sources.