Data flow analysis of distributed communicating processes


Journal Article

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. © 1990 Plenum Publishing Corporation.

Full Text

Duke Authors

Cited Authors

  • Reif, JH; Smolka, SA

Published Date

  • February 1, 1990

Published In

Volume / Issue

  • 19 / 1

Start / End Page

  • 1 - 30

Electronic International Standard Serial Number (EISSN)

  • 1573-7640

International Standard Serial Number (ISSN)

  • 0885-7458

Digital Object Identifier (DOI)

  • 10.1007/BF01407862

Citation Source

  • Scopus