Visual Parallel Programming with Determinacy: A Language Specification, an Analysis Technique, and a Programming Tool
Abstract
Phred is a visual parallel programming language in which programs can be statically analyzed for deterministic behavior. This paper presents the Phred language, techniques for analyzing the language, and a programming environment which supports Phred programming. There are many methods for specifying synchronization and data sharing in parallel programs. The Phred programmer uses graph constructs for describing parallelism, synchronization and data sharing. These graphs are formally described in this paper as a graph grammar. The use of graphs in Phred provides an intuitive and visual representation for parallel computations. The inadvertent specification of nondeterministic computations is a common error in parallel programming. Phred addresses the issue of determinacy by visually indicating regions of a program where nondeterminacy may exist. This analysis and its integration into a programming environment is presented here. The Phred programming environment supports the specification, analysis and execution of Phred programs. The distribution of the programming environment itself over several workstations is also described
Document Details
- Document Type
- Technical Report
- Publication Date
- Jun 07, 1993
- Accession Number
- ADA267560
Entities
People
- Adam Beguelin
- Gary Nutt
Organizations
- Carnegie Mellon University