DocumentCode
1783336
Title
F2C2-STM: Flux-Based Feedback-Driven Concurrency Control for STMs
Author
Ravichandran, Krishnan ; Pande, S.
Author_Institution
Coll. of Comput., Georgia Inst. of Technol., Atlanta, GA, USA
fYear
2014
fDate
19-23 May 2014
Firstpage
927
Lastpage
938
Abstract
Software Transactional Memory (STM) systems provide an easy to use programming model for concurrent code and have been found suitable for parallelizing many applications providing performance gains with minimal programmer effort. With increasing core counts on modern processors one would expect increasing benefits. However, we observe that running STM applications on higher core counts is sometimes, in fact, detrimental to performance. This is due to the larger number of conflicts that arise with a larger number of parallel cores. As the number of cores available on processors steadily rise, a larger number of applications are beginning to exhibit these characteristics. In this paper we propose a novel dynamic concurrency control technique which can significantly improve performance (up to 50%) as well as resource utilization (up to 85%) for these applications at higher core counts. Our technique uses ideas borrowed from TCP´s network congestion control algorithm and uses self-induced concurrency fluctuations to dynamically monitor and match varying concurrency levels in applications while minimizing global synchronization. Our flux-based feedback-driven concurrency control technique is capable of fully recovering the performance of the best statically chosen concurrency specification (as chosen by an oracle) regardless of the initial specification for several real world applications. Further, our technique can actually improve upon the performance of the oracle chosen specification by more than 10% for certain applications through dynamic adaptation to available parallelism. We demonstrate our approach on the STAMP benchmark suite while reporting significant performance and resource utilization benefits. We also demonstrate significantly better performance when comparing against state of the art concurrency control and scheduling techniques. Further, our technique is programmer friendly as it requires no changes to application code and no offline phases.
Keywords
concurrency control; parallel programming; scheduling; F2C2-STM; STAMP benchmark suite; TCP network congestion control algorithm; application code; concurrency levels; concurrent code; core counts; dynamic concurrency control technique; flux-based feedback-driven concurrency control technique; global synchronization minimization; parallel cores; programming model; scheduling techniques; self-induced concurrency fluctuations; software transactional memory system; Benchmark testing; Concurrency control; Concurrent computing; Instruction sets; Logic gates; Resource management; Throughput; concurrency control; feedback-driven; software transactional memory; transactions;
fLanguage
English
Publisher
ieee
Conference_Titel
Parallel and Distributed Processing Symposium, 2014 IEEE 28th International
Conference_Location
Phoenix, AZ
ISSN
1530-2075
Print_ISBN
978-1-4799-3799-8
Type
conf
DOI
10.1109/IPDPS.2014.99
Filename
6877323
Link To Document