Publication: T-rex: a dynamic race detection tool for C/C++ transactional memory applications
Loading...
Program
KU-Authors
Organization Authors
Co-Authors
Kestor, Gökçen
Ünsal, Osman S.
Cristal, Adrian
Date
Language
Embargo Status
N/A
Journal Title
Journal ISSN
Volume Title
Alternative Title
Abstract
Transactional memory (TM) has reached a maturity level and programmers have started using this programming model to parallelize their applications. However, although much effort has been put into the development of TM systems, there is still lack of debugging and development tools for TM applications, such as race detection tools. Previous definitions of transactional data race often impose constraints on the TM implementation or the programming language and cannot be widely applied to current STM designs. We propose a new definition of transactional data race that follows the programmer's intuition of racy accesses, is independent of thread interleaving, can accommodate popular STM systems, and allows common programming idioms. Based on this definition, we design and implement TRex, a precise dynamic race detection tool for C/C++ TM programs. Using T-Rex we discover transactional data races in STAMP applications that, to the best of our knowledge, have not been previously reported. Our experiments also show that T-Rex runtime overhead is comparable to stateof- The-art lock-based race detection tools, despite the extra work required to handle transactional memory semantics.
Source
Publisher
Association for Computing Machinery
Subject
Citation
item.page.haspartof
Source
Proceedings of the 9th European Conference on Computer Systems, EuroSys 2014
item.page.ispartofseries
item.page.edition
DOI
10.1145/2592798.2592809
item.page.datauri
item.page.link
Rights
N/A
Copyrights Note
Rights and licensing
N/A
