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
fDate :
4/1/2012 12:00:00 AM
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.;
Journal_Title :
Computers, IEEE Transactions on