Abstract
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) |
---|---|
Pages (from-to) | 139-170 |
Number of pages | 32 |
Journal | ACM Transactions on Computer Systems |
Volume | 14 |
Issue number | 2 |
DOIs | |
State | Published - May 1996 |
Keywords
- 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