Title :
ArTA: Adaptive Granularity in Transactional Applications
Author_Institution :
Electr. Eng. Dept., Lakehead Univ., Thunder Bay, ON, Canada
Abstract :
Software Transactional Memory (STM) is a programming paradigm which simplifies parallel programming for multi-core processors. A key requirement in STMs is the mechanism to track memory accesses and detect conflicts among speculative transactions. Current STMs exploit a fixed-size tracking scheme to detect conflicts, i.e. at the word level. However, the choice of access granularity significantly affects the performance of STMs. While a coarse-grained access tracking increases false conflicts a fine-grained scheme may increase overhead of STMs due to the cost of lock acquisitions. In order to mitigate the disadvantages of a fixed-size access tracking, we propose adaptive granularity in transactional applications (ArTA) to change the granularity of STMs dynamically and in runtime. ArTA is a speculative approach and relies on history of transactions to select access granularity for shared data structures. We have incorporated ArTA into TL2 and compared the performance of the new implementation with the original STM using Stamp v0.9.10 benchmark suite. Our results reveal that ArTA improves performance of applications up to 42%.
Keywords :
data structures; parallel programming; storage management; access granularity; adaptive granularity; coarse-grained access tracking; fixed-size access tracking; fixed-size tracking scheme; multicore processors; parallel programming; programming paradigm; shared data structures; software transactional memory; transactional applications; Arrays; Benchmark testing; Instruction sets; Radiation detectors; Vectors; Lock Granularity; Transactional Memory;
Conference_Titel :
Parallel, Distributed and Network-Based Processing (PDP), 2012 20th Euromicro International Conference on
Conference_Location :
Garching
Print_ISBN :
978-1-4673-0226-5
DOI :
10.1109/PDP.2012.66