The Mentat Computation Model Data-Driven Support for Object-Oriented Parallel Processing

Author:Grimshaw, Andrew, Department of Computer ScienceUniversity of Virginia

Mentat is an object-oriented parallel processing system developed at the University of Virginia which has been ported to a variety of MIMD architectures. The computation model employed by Mentat is macro data-flow (MDF), a medium grain, scalable, data-driven computation model that supports both high degrees of parallelism and the object-oriented paradigm. A key aspect of the model is that it can be efficiently implemented. Inspired by data-flow, MDF retains the graph-based, data-driven, self-synchronizing aspects of data-flow. MDF address the shortcomings that data-flow exhibits when applied to distributed memory MIMD architectures by extending data-flow in three ways: (1) it is medium grain - actors are of sufficient computational complexity to amortize overhead costs, (2) program graphs are dynamically constructed at runtime - this permits dynamic function binding as required by the object-oriented paradigm and increases the average computation granularity, and (3) actors may maintain state between executions - this provides an effective way to model the state properties of imperative, object-oriented programs. In this paper we present the macro data-flow model, key features of the Mentat Programming Language (MPL), key features of the Mentat run-time system that implements a virtual macro data-flow machine, and translations from MPL constructs to the virtual machine. The result of the translation process is programs in which program graphs are constructed at run-time by observing data dependencies that develop as execution unfolds. These program graphs are then executed in parallel by the run-time system, resulting in improved performance over sequential execution.
Note: Abstract extracted from PDF text

All rights reserved (no additional license for public reuse)
Source Citation:

Grimshaw, Andrew. "The Mentat Computation Model Data-Driven Support for Object-Oriented Parallel Processing." University of Virginia Dept. of Computer Science Tech Report (1993).

University of Virginia, Department of Computer Science
Published Date: