Skip to main navigation Skip to search Skip to main content

Data flow analysis of distributed communicating processes

  • Duke University

Research output: Contribution to journalArticlepeer-review

19 Scopus citations

Abstract

Data flow analysis is a technique essential to the compile-time optimization of computer programs, wherein facts relevant to program optimizations are discovered by the global propagation of facts obvious locally. This paper extends several known techniques for data flow analysis of sequential programs to the static analysis of distributed communicating processes. In particular, we present iterative algorithms for detecting unreachable program statements, and for determining the values of program expressions. The latter information can be used to place bounds on the size of variables and messages. Our main innovation is the event spanning graph, which serves as a heuristic for ordering the nodes through which data flow information is propagated. We consider both static communication, where all channel arguments are constants, and the more difficult dynamic communication, where channel arguments may be variables and channels may be passed as messages.

Original languageEnglish
Pages (from-to)1-30
Number of pages30
JournalInternational Journal of Parallel Programming
Volume19
Issue number1
DOIs
StatePublished - Feb 1990

Keywords

  • Communicating processes
  • data flow analysis
  • message passing
  • reachability

Fingerprint

Dive into the research topics of 'Data flow analysis of distributed communicating processes'. Together they form a unique fingerprint.

Cite this