HARD: Hardware-Assisted Lockset-based Race Detection
Cached
Download Links
- [carmen.cs.uiuc.edu]
- [opera.cs.uiuc.edu]
- [opera.ucsd.edu]
- [cs.ucsb.edu]
- [carmen.cs.uiuc.edu]
- DBLP
Other Repositories/Bibliography
| Citations: | 18 - 1 self |
BibTeX
@MISC{Zhou_hard:hardware-assisted,
author = {Pin Zhou and Radu Teodorescu and Yuanyuan Zhou},
title = {HARD: Hardware-Assisted Lockset-based Race Detection},
year = {}
}
OpenURL
Abstract
Abstract The emergence of multicore architectures will lead to anincrease in the use of multithreaded applications that are prone to synchronization bugs, such as data races. Softwaresolutions for detecting data races generally incur large overheads. Hardware support for race detection can sig-nificantly reduce that overhead. However, all existing hardware proposals for race detection are based on the happens-before algorithm which is sensitive to thread interleaving and cannot detect races that are not exposed during themonitored run. The lockset algorithm addresses this limitation. Unfortunately, due to the challenging issues suchas storing the lockset information and performing complex set operations, so far it has been implemented only in soft-ware with 10-30 times performance hit. This paper proposes the first hardware implementation(called HARD) of the lockset algorithm to exploit the race detection capability of this algorithm with minimal over-head. HARD efficiently stores lock sets in hardware bloom filters and converts the expensive set operations into fast bit-wise logic operations with negligible overhead. We evaluate HARD using six SPLASH-2 applications with 60 randomlyinjected bugs. Our results show that HARD can detect 54 out of 60 tested bugs, 20 % more than happens-before,with only 0.1-2.6 % of execution overhead. We also show our hardware design is cost-effective by comparing with theideal lockset implementation, which would require a large amount of hardware resources.







