首页> 外文会议>European conference on object-oriented programming >RedCard: Redundant Check Elimination for Dynamic Race Detectors
【24h】

RedCard: Redundant Check Elimination for Dynamic Race Detectors

机译:RedCard:动态竞赛检测器的冗余检查消除

获取原文

摘要

Precise dynamic race detectors report an error if and only if an observed program trace exhibits a data race. They must typically check for races on all memory accesses to ensure that they catch all races and generate no spurious warnings. However, a race check for a particular memory access is guaranteed to be redundant if the accessing thread has already accessed that location within the same release-free span. A release-free span is any sequence of instructions containing no lock releases or other "release-like" synchronization operations, such as wait or fork. We present a static analysis to identify redundant race checks by reasoning about memory accesses within release-free spans. In contrast to prior whole program analyses for identifying accesses that are always race-free, our redundant check analysis is span-local and can also be made method-local without any major loss in effectiveness. RedCard, our prototype implementation for the Java language, enables dynamic race detectors to reduce the number of run-time checks by close to 40% with no loss in precision. We also present a complementary shadow proxy analysis for identifying when multiple memory locations can be treated as a single location by a dynamic race detector, again with no loss in precision. Combined, our analyses reduce the number of memory accesses requiring checks by roughly 50%.
机译:当且仅当观察到的程序跟踪显示出数据竞争时,精确的动态竞争检测器才会报告错误。他们通常必须检查所有内存访问中的种族,以确保它们捕获所有种族并且不生成任何虚假警告。但是,如果访问线程已经在相同的不释放范围内访问了该位置,则保证对特定内存访问的竞争检查是多余的。无释放跨度是不包含锁定释放或其他“类似释放”的同步操作(例如,等待或分叉)的任何指令序列。我们提出了一种静态分析,通过推理无释放范围内的内存访问来识别冗余的竞争检查。与以前的整个程序分析(用于识别始终没有竞争的访问)相比,我们的冗余检查分析是跨区域的,也可以进行局部方法,而不会造成任何重大的有效性损失。 RedCard是Java语言的原型实现,它使动态竞争检测器能够将运行时检查的次数减少近40%,而不会降低精度。我们还提出了一种补充的影子代理分析,用于识别何时将多个内存位置通过动态竞争检测器视为一个位置,而又不会降低精度。综合起来,我们的分析将需要检查的内存访问数量减少了大约50%。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号