Duet: static analysis for unbounded parallelism


Duet is a static analysis tool for concurrent programs in which the number of executing threads is not statically bounded. Duet has a modular architecture, which is based on separating the invariant synthesis problem in two subtasks: (1) data dependence analysis, which is used to construct a data flow model of the program, and (2) interpretation of the data flow model over a (possibly infinite) abstract domain, which generates invariants. This separation of concerns allows researchers working on data dependence analysis and abstract domains to combine their efforts toward solving the challenging problem of static analysis for unbounded concurrency. In this paper, we discuss the architecture of Duet as well as two data dependence analyses that have been implemented in the tool.

[ pdf ]


@inproceedings{Farzan2013b, author = {Farzan, Azadeh and Kincaid, Zachary}, title = {Duet: static analysis for unbounded parallelism}, series = {CAV}, year = {2013}, }