Mentat is an object-oriented parallel processing system designed to simplify the task of writing portable parallel programs for parallel machines and workstation networks. The Mentat compiler and run-time system work together to automatically manage the communication and synchronization between objects. The run-time system marshalls member function arguments, schedules objects on processors, and dynamically constructs and executes large-grain data dependence graphs. In this article we present the Mentat run-time system. We focus on three aspects - the software architecture, including the interface to the compiler and the structure and interaction of the principle components of the run-time system; the run-time overhead on a component-by-component basis for two platforms, a Sun SparcStation 2 and an Intel Paragon; and an analysis of the minimum granularity required for application programs to overcome the run-time overhead.
|Original language||English (US)|
|Number of pages||32|
|Journal||ACM Transactions on Computer Systems|
|State||Published - May 1996|
- D.1.3 [Programming Techniques]: Concurrent Programming - parallel programming
- D.1.5 [Programming Techniques]: Object-Oriented Programming
- D.3.2 [Programming Languages]: Language Classifications - concurrent, distributed, and parallel languages