首页> 外文会议>ACM SIGPLAN-SIGACT symposium on principles of programming languages >Atomizer: A Dynamic Atomicity Checker For Multithreaded Programs
【24h】

Atomizer: A Dynamic Atomicity Checker For Multithreaded Programs

机译:雾化器:多线程程序的动态原子检查器

获取原文

摘要

Ensuring the correctness of multithreaded programs is difficult, due to the potential for unexpected interactions between concurrent threads. Much previous work has focused on detecting race conditions, but the absence of race conditions does not by itself prevent undesired thread interactions. We focus on the more fundamental non-interference property of atomicity; a method is atomic if its execution is not affected by and does not interfere with concurrently-executing threads. Atomic methods can be understood according to their sequential semantics, which significantly simplifies (formal and informal) correctness arguments. This paper presents a dynamic analysis for detecting atomicity violations. This analysis combines ideas from both Lipton's theory of reduction and earlier dynamic race detectors. Experience with a prototype checker for multithreaded Java code demonstrates that this approach is effective for detecting errors due to unintended interactions between threads. In particular, our atomicity checker detects errors that would be missed by standard race detectors, and it produces fewer false alarms on benign races that do not cause atomicity violations. Our experimental results also indicate that the majority of methods in our benchmarks are atomic, supporting our hypothesis that atomicity is a standard methodology in multithreaded programming.
机译:确保多线程程序的正确性很难,因为并发线程之间的意外交互可能性。以前的工作已经专注于检测竞争条件,但没有种族条件并非自身防止不期望的线程相互作用。我们专注于原子学的更基本的非干涉性质;如果其执行不受影响,则方法是原子的,并且不会干扰同时执行的线程。可以根据其顺序语义可以理解原子方法,这显着简化了(正式和非正式的)正确性争论。本文提出了检测原子违规的动态分析。该分析结合了Lipton的减少和早期动态竞争探测器理论的思想。对于多线程Java代码的Prototype Checker的体验演示了这种方法对于由于线程之间的意外交互而有效地检测错误。特别是,我们的原子学检查器检测标准竞争探测器错过的错误,并且它在不造成原子违规的良性比赛上产生较少的误报。我们的实验结果还表明,我们的基准中的大多数方法是原子的,支持我们的假设,即原子性是多线程编程中的标准方法。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号