A graph model, paradigm, and a software tool, visa, for the representation, design, and simulation of parallel, distributed computations

Isabelle M. Demeure, Gary J Nutt · 1989

The research presented here is concerned with representation techniques and tools to support the design, prototyping, simulation, and evaluation of message-based parallel, distributed computations. We describe ParaDiGM--Parallel, Distributed computation Graph Model--a visual representation technique for parallel, message-based distributed computations. ParaDiGM provides several views of a computation depending on the aspect of concern. It is made of two complementary submodels, the DCPG--Distributed Computing Precedence Graph--model, and the PAM--Process Architecture Model--model. DCPGs are precedence graphs used to express the functionality of a computation in terms of tasks, message-passing, and data. PAM graphs are used to represent the partitioning of a computation into schedulable units or processes, and the pattern of communication among those units. There is a natural mapping between the two models. We illustrate the utility of ParaDiGM as a representation technique by applying it to various computations (e.g., an adaptive global optimization algorithm, the client-server model). ParaDiGM representations are concise. They can be used in documenting the design and the implementation of parallel, distributed computations, in describing such computations to colleagues, and in comparing and contrasting various implementations of the same computation. We then describe VISA--VISual Assistant, a software tool to support the design, prototyping, and simulation of message-based parallel, distributed computations. VISA is based on the ParaDiGM model. In particular, it supports the editing of ParaDiGM graphs to describe the computations of interest, and the animation of these graphs to provide visual feedback during simulations. The graphs are supplemented with various attributes, simulation parameters, and interpretations which are procedures that can be executed by VISA. A prototype of VISA, Fraise, was developed. It illustrates how VISA would support the design, the prototyping and the simulation of parallel, distributed computations. Several examples of simulations are provided. They show in particular how one can experiment with a computation under various load conditions.

Read the paper · More papers on PaperTik