Lightweight, robust adaptivity for software transactional memory

14 years 8 days ago
Lightweight, robust adaptivity for software transactional memory
When a program uses Software Transactional Memory (STM) to synchronize accesses to shared memory, the performance often depends on which STM implementation is used. Implementations vary greatly in their underlying mechanisms, in the features they provide, and in the assumptions they make about the common case. Consequently, the best choice of algorithm is workload-dependent. Worse yet, for workloads composed of multiple phases of execution, the “best” choice of implementation may change during execution. We present a low-overhead system for adapting between STM implementations. Like previous work, our system enables adaptivity between different parameterizations of a given algorithm, and it allows adapting between the use of transactions and coarse-grained locks. In addition, we support dynamic switching between fundamentally different STM implementations. We also explicitly support irrevocability, retry-based condition synchronization, and privatization. Through a series of exp...
Michael F. Spear
Added 18 Jul 2010
Updated 18 Jul 2010
Type Conference
Year 2010
Where SPAA
Authors Michael F. Spear
Comments (0)