Race detection and reachability in nearly series-parallel DAGs

13Citations
Citations of this article
16Readers
Mendeley users who have this article in their library.

Abstract

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, in O(T1 +k2) time, where T1 is the sequential running time of the original program and k is 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 an n-node series parallel graph and k additional non-SP edges, the total construction time of the data structure is O(n+k2), and each reachability query can be answered in O(1) time. The data structure is traversally incremental, meaning that it supports the insertion of nodes/edges, but only as they are discovered through a graph traversal.

Cite

CITATION STYLE

APA

Agrawal, K., Devietti, J., Fineman, J. T., Lee, I. T. A., Utterback, R., & Xu, C. (2018). Race detection and reachability in nearly series-parallel DAGs. In Proceedings of the Annual ACM-SIAM Symposium on Discrete Algorithms (pp. 156–171). Association for Computing Machinery. https://doi.org/10.1137/1.9781611975031.11

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free