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

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Jun 07, 1993
Accession Number
ADA267560

Entities

People

  • Adam Beguelin
  • Gary Nutt

Organizations

  • Carnegie Mellon University

Tags

DTIC Thesaurus Topics

  • Algorithms
  • C Programming Language
  • Computations
  • Computer Programming
  • Computer Science
  • Computers
  • Consoles
  • Data Storage Systems
  • Debugging
  • Environment
  • Grammars
  • High Level Languages
  • Language
  • Models
  • Operating Systems
  • Programming Languages
  • Storage

Fields of Study

  • Computer science

Readers

  • Database Systems and Applications
  • Parallel and Distributed Computing.