skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: A practical algorithm for static analysis of parallel programs

Journal Article · · Journal of Parallel and Distributed Computing; (USA)
 [1]
  1. California Univ., Santa Cruz, CA (USA)

One approach to analyzing the behavior of a concurrent program requires determining the reachable program states. A program state consists of a set of task states, the values of shared variables used for synchronization, and local variables that derive the values directly from synchronization operations. However, the number of reachable states rises exponentially with the number of tasks and becomes intractable for many concurrent programs. A variation of this approach merges a set of related states into a single virtual state. Using this approach, the analysis of concurrent programs becomes feasible as the number of virtual states is often orders of magnitude less than the number of reachable states. This paper presents a method for determining the virtual states that describe the reachable program states, and the reduction in the number of states is analyzed. The algorithms given have been implemented in a state program analyzer for multitasking Fortran, and the results obtained are discussed.

OSTI ID:
5347806
Journal Information:
Journal of Parallel and Distributed Computing; (USA), Vol. 6:3; ISSN 0743-7315
Country of Publication:
United States
Language:
English