论文标题

动态数据竞赛检测技术的比较分析

Comparative Analysis of Dynamic Data Race Detection Techniques

论文作者

Entezari, Danial

论文摘要

数据竞赛的后果可能是非常有问题的[1],并且重要的是确定哪些工具和方法最能检测到它们。要进行数据竞赛必须满足以下条件:单个过程中的两个或多个线程同时访问相同的内存位置,至少一个访问权限是为写作,并且这些线程没有使用任何独家锁来控制其对该内存的访问。 本文揭示了动态数据竞赛检测技术的两种主要方法的技术和实现。发生的方法和锁定方法,并对使用(第4,§5)或这两种方法(第7.1节)的几种工具进行分析,以检测数据竞赛。本文还揭示了动态数据竞赛检测(也称为动态分析)可以在多大程度上确定有害的数据竞赛,如何实施以及如何在性能和准确性方面与其他形式的数据检测进行比较。

The consequences of data races can be potentially very problematic [1], and it is important to determine what tools and methods are best at detecting them. The following conditions must be met for a data race to occur: two or more threads in a single process access the same memory location concurrently, at least one of the accesses is for writing, and the threads are not using any exclusive locks to control their accesses to that memory. This paper reveals the techniques and implementations of the two main methods for dynamic data race detection techniques; the happens-before and lockset methods, and produces an analysis for several tools that employ either (§4, §5) or of both these methods (§7.1) for detecting data races. This paper also reveals the extent to which dynamic data race detection (also called dynamic analysis) can identify harmful data races, how it can be implemented, and how it compares to other forms of data detection in terms of performance and accuracy.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源