Race detection and reachability in nearly series-parallel DAGs
Race detection and reachability in nearly series-parallel DAGs
复制标题
近串联并行 DAG 中的竞争检测和可达性
DOI:
10.1137/1.9781611975031.11
复制
发表时间:
2018
期刊:
影响因子:
--
通讯作者:
Xu, Changming
中科院分区:
文献类型:
--
作者:
Agrawal, Kunal;Devietti, Joseph;Fineman, Jeremy T.;Lee, I-Ting Angelina;Utterback, Robert;Xu, Changming
A program is said to have a determinacy race if logically parallel parts of a program access the same memory location and one of the accesses is a write. These races are generally bugs in the program since they lead to non-deterministic program behavior — different schedules of the program can lead to different results. Most prior work on detecting these races focuses on a subclass of programs with series-parallel or nested parallelism.This paper presents a race-detection algorithm for detecting races in a more general class of programs, namely programs that include arbitrary ordering constraints in additional to the series-parallel constructs. The algorithm performs a serial execution of the program, augmented to detect races, inO(T1+k2) time, whereT1is the sequential running time of the original program andkis the number of non series-parallel constraints.The main technical novelty of this paper is a new data structure, R-Sketch, for answering reachability queries in nearly series-parallel (SP) directed acyclic graphs (DAGs). Given as input a graph comprising ann-node series parallel graph andkadditional non-SP edges, the total construction time of the data structure isO(n+k2), and each reachability query can be answered inO(1) time. The data structure istraversally incremental, meaning that it supports the insertion of nodes/edges, but only as they are discovered through a graph traversal.