DocumentCode
1458485
Title
Efficient Runtime Detection and Toleration of Asymmetric Races
Author
Ratanaworabhan, Paruj ; Burtscher, Martin ; Kirovski, Darko ; Zorn, Benjamin ; Nagpal, Rahul ; Pattabiraman, Karthik
Author_Institution
Fac. of Eng., Kasetsart Univ., Bangkok, Thailand
Volume
61
Issue
4
fYear
2012
fDate
4/1/2012 12:00:00 AM
Firstpage
548
Lastpage
562
Abstract
We introduce ToleRace, a runtime system that allows programs to detect and even tolerate asymmetric data races. Asymmetric races are race conditions where one thread correctly acquires and releases a lock for a shared variable while another thread improperly accesses the same variable. ToleRace provides approximate isolation in the critical sections of lock-based parallel programs by creating a local copy of each shared variable when entering a critical section, operating on the local copies, and propagating the appropriate copies upon leaving the critical section. We start by characterizing all possible interleavings that can cause races and precisely describe the effect of ToleRace in each case. Then, we study the theoretical aspects of an oracle that knows exactly what type of interleaving has occurred. Finally, we present software implementations of ToleRace and evaluate them on multithreaded applications from the SPLASH2 and PARSEC suites.
Keywords
multi-threading; program debugging; PARSEC suites; SPLASH2 suites; ToleRace; asymmetric data race condition; lock-based parallel program; multithreaded application; runtime detection; runtime system; runtime toleration; shared variable; software implementation; Instruction sets; Instruments; Libraries; Runtime; Schedules; Synchronization; Debugging aids; dynamic instrumentation; parallel programming; race detection and toleration.;
fLanguage
English
Journal_Title
Computers, IEEE Transactions on
Publisher
ieee
ISSN
0018-9340
Type
jour
DOI
10.1109/TC.2011.48
Filename
5719607
Link To Document