| A conservative data flow algorithm for detecting all pairs of statements that may happen in parallel |
| Full text |
Pdf
(1.08 MB)
|
| Source
|
Foundations of Software Engineering
archive
Proceedings of the 6th ACM SIGSOFT international symposium on Foundations of software engineering
table of contents
Lake Buena Vista, Florida, United States
Pages: 24 - 34
Year of Publication: 1998
ISBN:1-58113-108-9
Also published in ...
|
|
Authors
|
|
Gleb Naumovich
|
Laboratory for Advanced Software Engineering Research, Department of Computer Science, University of Massachusetts at Amherst, Amherst, MA
|
|
George S. Avrunin
|
Laboratory for Advanced Software Engineering Research, Department of Computer Science, University of Massachusetts at Amherst, Amherst, MA
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 2, Downloads (12 Months): 45, Citation Count: 23
|
|
|
ABSTRACT
Information about which pairs of statements in a concurrent program can execute in parallel is important for optimizing and debugging programs, for detecting anomalies, and for improving the accuracy of data flow analysis. In this paper, we describe a new data flow algorithm that finds a conservative approximation of the set of all such pairs. We have carried out an initial comparison of the precision of our algorithm and that of the most precise of the earlier approaches, Masticola and Ryder's non-concurrency analysis [8], using a sample of 159 concurrent Ada programs that includes the collection assembled by Masticola and Ryder. For these examples, our algorithm was almost always more precise than non-concurrency analysis, in the sense that the set of pairs identified by our algorithm as possibly happening in parallel is a proper subset of the set identified by non-concurrency analysis. In 132 cases, we were able to use reachability analysis to determine exactly the set of pairs of statements that may happen in parallel. For these cases, there were a total of only 10 pairs identified by our algorithm that cannot actually happen in parallel.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
 |
2
|
Evelyn Duesterwald , Mary Lou Soffa, Concurrency analysis in the presence of procedures using a data-flow framework, Proceedings of the symposium on Testing, analysis, and verification, p.36-48, October 08-10, 1991, Victoria, British Columbia, Canada
[doi> 10.1145/120807.120811]
|
| |
3
|
|
 |
4
|
|
| |
5
|
|
 |
6
|
Susan Horwitz , Thomas Reps , Mooly Sagiv, Demand interprocedural dataflow analysis, Proceedings of the 3rd ACM SIGSOFT symposium on Foundations of software engineering, p.104-115, October 12-15, 1995, Washington, D.C., United States
|
| |
7
|
|
 |
8
|
|
| |
9
|
|
 |
10
|
|
 |
11
|
Gleb Naumovich , Lori A. Clarke , Leon J. Osterweil , Matthew B. Dwyer, Verification of concurrent software with FLAVERS, Proceedings of the 19th international conference on Software engineering, p.594-595, May 17-23, 1997, Boston, Massachusetts, United States
[doi> 10.1145/253228.253489]
|
| |
12
|
R. N. Taylor. Complexity of analyzing the synchronization structure of concurrent programs. Acta Informatica, 19:57-84, 1983.
|
CITED BY 23
|
|
|
|
|
|
|
|
|
|
|
Gleb Naumovich , George S. Avrunin , Lori A. Clarke, Data flow analysis for checking properties of concurrent Java programs, Proceedings of the 21st international conference on Software engineering, p.399-410, May 16-22, 1999, Los Angeles, California, United States
|
|
|
|
|
|
|
|
|
Jamieson M. Cobleigh , Lori A. Clarke , Leon J. Osterweil, The right algorithm at the right time: comparing data flow analysis algorithms for finite state verification, Proceedings of the 23rd International Conference on Software Engineering, p.37-46, May 12-19, 2001, Toronto, Ontario, Canada
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Shivali Agarwal , Rajkishore Barik , Vivek Sarkar , Rudrapatna K. Shyamasundar, May-happen-in-parallel analysis of X10 programs, Proceedings of the 12th ACM SIGPLAN symposium on Principles and practice of parallel programming, March 14-17, 2007, San Jose, California, USA
|
|
|
|
|