Title :
Speculative Contention Avoidance in Software Transactional Memory
Author_Institution :
Electr. Eng. Dept., Lakehead Univ., Thunder Bay, ON, Canada
Abstract :
The well-known drawbacks of lock-based programming have forced researchers to explore new alternatives for parallel programming of which Transactional memory (TM) is a promising one. TM has been shown to scale well in multi-core processors when applications have data access patterns with a few conflicts. In contrast, if conflicts happen frequently in programs TM results in poor performance. In this paper, we introduce speculative contention avoidance (SCA) to prevent conflicts in TMs. SCA dynamically controls number of concurrently executing transactions and serializes those transactions that are likely to conflict. This technique is built on the concept of contention locality, which describes the likelihood that a previously aborted transaction fails again in the future. We find that contentions are highly predictable in TMs and exploit simple predictors which rely on history of transactions to speculate contentions. We have incorporated SCA into TL2 and compared the performance of the new implementation with the original STM using Stamp v0.9.7 benchmark suite. Our results show that SCA is highly effective at preventing contentions and significantly improves performance.
Keywords :
concurrency control; multiprocessing systems; parallel programming; storage management; Stamp v0.9.7 benchmark suite; lock-based programming; multicore processors; parallel programming; software transactional memory; speculative contention avoidance; Accuracy; Benchmark testing; Hardware; Instruction sets; Multicore processing; Programming; Radiation detectors;
Conference_Titel :
Parallel and Distributed Processing Workshops and Phd Forum (IPDPSW), 2011 IEEE International Symposium on
Conference_Location :
Shanghai
Print_ISBN :
978-1-61284-425-1
Electronic_ISBN :
1530-2075
DOI :
10.1109/IPDPS.2011.290