arXiv Open Access 2024

HardRace: A Dynamic Data Race Monitor for Production Use

Xudong Sun Zhuo Chen Jingyang Shi Yiyu Zhang Peng Di +3 lainnya
Lihat Sumber

Abstrak

Data races are critical issues in multithreaded program, leading to unpredictable, catastrophic and difficult-to-diagnose problems. Despite the extensive in-house testing, data races often escape to deployed software and manifest in production runs. Existing approaches suffer from either prohibitively high runtime overhead or incomplete detection capability. In this paper, we introduce HardRace, a data race monitor to detect races on-the-fly while with sufficiently low runtime overhead and high detection capability. HardRace firstly employs sound static analysis to determine a minimal set of essential memory accesses relevant to data races. It then leverages hardware trace instruction, i.e., Intel PTWRITE, to selectively record only these memory accesses and thread synchronization events during execution with negligible runtime overhead. Given the tracing data, HardRace performs standard data race detection algorithms to timely report potential races occurred in production runs. The experimental evaluations show that HardRace outperforms state-of-the-art tools like ProRace and Kard in terms of both runtime overhead and detection capability -- HardRace can detect all kinds of data races in read-world applications while maintaining a negligible overhead, less than 2% on average.

Topik & Kata Kunci

Penulis (8)

X

Xudong Sun

Z

Zhuo Chen

J

Jingyang Shi

Y

Yiyu Zhang

P

Peng Di

J

Jianhua Zhao

X

Xuandong Li

Z

Zhiqiang Zuo

Format Sitasi

Sun, X., Chen, Z., Shi, J., Zhang, Y., Di, P., Zhao, J. et al. (2024). HardRace: A Dynamic Data Race Monitor for Production Use. https://arxiv.org/abs/2410.18412

Akses Cepat

Lihat di Sumber
Informasi Jurnal
Tahun Terbit
2024
Bahasa
en
Sumber Database
arXiv
Akses
Open Access ✓