A practical algorithm for static analysis of parallel programs
- 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
Similar Records
High-Level Synthesis of Parallel Specifications Coupling Static and Dynamic Controllers
High-Level Synthesis of Parallel Specifications Coupling Static and Dynamic Controllers