Title
Understanding transactional memory performance
Abstract
Transactional memory promises to generalize transactional programming to mainstream languages and data structures. The purported benefit of transactions is that they are easier to program correctly than fine-grained locking and perform just as well. This performance claim is not always borne out because an application may violate a common-case assumption of the TM designer or because of external system effects. This paper carefully studies a range of factors that can adversely influence transactional memory performance. In order to help programmers assess the suitability of their code for transactional memory, this paper introduces a formal model of transactional memory as well as a tool, called Syncchar. Syncchar can predict the speedup of a conversion from locks to transactions within 25 % for the STAMP benchmarks. We also use the Syncchar tool to diagnose and eliminate a starvation pathology in the TxLinux kernel, improving the performance of the Modified Andrew Benchmark by 55% over Linux. The paper also presents the first detailed study of how the performance of user-level transactional programs (from the STAMP benchmarks) are influenced by factors outside of the transactional memory system. The study includes data about the interaction of transactional programs with the architecture, memory allocator, and compiler. Because many factors influence the performance of transactional programs, getting good performance from transactions is more difficult than commonly appreciated.
Year
DOI
Venue
2010
10.1109/ISPASS.2010.5452061
Performance Analysis of Systems & Software
Keywords
Field
DocType
Linux,data structures,operating system kernels,transaction processing,Syncchar,TxLinux kernel,compiler,data structures,memory allocator,modified Andrew benchmark,transactional memory system,transactional programming,user-level transactional programs
Transaction processing,Data structure,Yarn,Computer science,Parallel computing,Real-time computing,Transactional memory,Compiler,Programming profession,Transactional leadership,Memory architecture
Conference
ISBN
Citations 
PageRank 
978-1-4244-6024-3
7
0.54
References 
Authors
21
2
Name
Order
Citations
PageRank
Donald E. Porter1484.16
Emmett Witchel21609223.76