Affiliation:
1. University of California at Santa Cruz, Santa Cruz, CA
2. Williams College, Williamstown, MA
Abstract
Multithreaded programs are notoriously prone to race conditions. Prior work developed precise dynamic race detectors that never report false alarms. However, these checkers employ expensive data structures, such as vector clocks (VCs), that result in significant performance overhead.
This paper exploits the insight that the full generality of VCs is not necessary in most cases. That is, we can replace VCs with an adaptive lightweight representation that, for almost all operations of the target program, requires constant space and supports constant-time operations. Experimental results show that the resulting race detection algorithm is over twice as fast as prior precise race detectors, with no loss of precision.
Funder
National Science Foundation
Publisher
Association for Computing Machinery (ACM)
Cited by
31 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. The ThreadRadar visualization for debugging concurrent Java programs;Journal of Visualization;2022-05-24
2. The anchor verifier for blocking and non-blocking concurrent software;Proceedings of the ACM on Programming Languages;2020-11-13
3. Efficient, near complete, and often sound hybrid dynamic data race prediction;Proceedings of the 17th International Conference on Managed Programming Languages and Runtimes;2020-11-04
4. Predicting all data race pairs for a specific schedule;Proceedings of the 16th ACM SIGPLAN International Conference on Managed Programming Languages and Runtimes - MPLR 2019;2019
5. Two-Phase Dynamic Analysis of Message-Passing Go Programs Based on Vector Clocks;Proceedings of the 20th International Symposium on Principles and Practice of Declarative Programming;2018-09-03