Bounding Speculative Execution of Atomic Regions to a Single Retry
Eduardo José Gómez-Hernández, Juan M. Cebrian, Stefanos Kaxiras, Alberto Ros
摘要
Mutual exclusion has long served as a fundamental construct in parallel programs. Despite a long history of optimizing the lower-level lock and unlock operations used to enforce mutual exclusion, such operations largely dictate performance in parallel programs. Speculative Lock Elision, and more generally Hardware Transactional Memory, allow executing atomic regions (ARs) concurrently and speculatively, and ensure correctness by using conflict detection. However, practical implementations of these ideas are best-effort and, in case of conflicts, the execution of ARs is retried a predetermined number of times before falling back to mutual exclusion.
This work explores the opportunities of using cacheline locking to bound the number of retries of speculative solutions. Our key insight is that ARs that access exactly the same set of addresses when re-executing can learn that set in the first execution and execute non-speculatively in the next one by performing an ordered cacheline locking. This way the speculative execution is bounded to a single retry.
We first establish the conditions for ARs to be able to re-execute under a cacheline-locked mode. Based on these conditions, we propose cleAR, cacheline-locked executed AR, a novel technique that on the first abort, forces the reexecution to use cacheline locking. The detection and conversion to cacheline-locking mode is transparent to software.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了最后一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
它引用的顶会 Paper4
- Free atomics: hardware atomic operations without fencesAshkan Asgharzadeh, Juan M. Cebrian, Arthur Perais, Stefanos Kaxiras 等ISCA 2022 · 被引用 13 次
- Lock-free locks revisitedNaama Ben-David, Guy E. Blelloch, Yuanhao WeiPPoPP 2022 · 被引用 12 次
- Efficient, Distributed, and Non-Speculative Multi-Address Atomic OperationsEduardo José Gómez-Hernández, Juan M. Cebrian, J. Rubén Titos Gil, Stefanos Kaxiras 等MICRO 2021 · 被引用 8 次
- TORTIS: Retry-Free Software Transactional Memory for Real-Time SystemsClaire Nord, Shai Caspin, Catherine E. Nemitz, Howard E. Shrobe 等RTSS 2021 · 被引用 2 次
相关 Paper
- Chaining Transactions for Effective Concurrency Management in Hardware Transactional MemoryVíctor Nicolás-Conesa, J. Rubén Titos Gil, Ricardo Fernández-Pascual, Manuel E. Acacio 等MICRO 2024 · 被引用 2 次
- No Rush in Executing Atomic InstructionsAshkan Asgharzadeh, Josué Feliu, Manuel E. Acacio, Stefanos Kaxiras 等HPCA 2025
- Towards Generating Thread-Safe Classes AutomaticallyHaichi Wang, Zan Wang, Jun Sun, Shuang Liu 等ASE 2020 · 被引用 1 次
- Improving the Concurrency Performance of Persistent Memory Transactions on MulticoresQing Wang, Youyou Lu, Zhongjie Wu, Fan Yang 等DAC 2020 · 被引用 3 次
- Reciprocating LocksDave Dice, Alex KoganPPoPP 2025 · 被引用 1 次
