PRESTO: A system for object‐oriented parallel programming
- 1 August 1988
- journal article
- research article
- Published by Wiley in Software: Practice and Experience
- Vol. 18 (8), 713-732
- https://doi.org/10.1002/spe.4380180802
Abstract
PRESTO is a programming system for writing object‐oriented parallel programs in a multiprocessor environment. PRESTO provides the programmer with a set of pre‐defined object types that simplify the construction of parallel programs. Examples of PRESTO objects are threads, which provide fine‐grained control over a program's execution, and synchronization objects, which allow simultaneously executing threads to co‐ordinate their activities.The goals of PRESTO are to provide a programming environment that makes it easy to express concurrent algorithms, to do so efficiently, and to do so in a manner that invites extensions and modifications. The first two goals, which are the focus of this paper, allow a programmer to use parallelism in a way that is naturally suited to the problem at hand, rather than being constrained by the limitations of a particular underlying kernel or hardware architecture. The third goal is touched upon but not emphasized in this paper.PRESTO is written in C++; it currently runs on the Sequent shared‐memory multiprocessor on top of the Dynix operating system. In this paper we describe the system model, its applicability to parallel programming, experiences with the initial implementation, and some early performance measurements.This publication has 5 references indexed in Scilit:
- Fine-grained mobility in the Emerald systemACM Transactions on Computer Systems, 1988
- An open enviornment for building parallel programming systemsPublished by Association for Computing Machinery (ACM) ,1988
- The Eden System: A Technical ReviewIEEE Transactions on Software Engineering, 1985
- Experience with processes and monitors in MesaCommunications of the ACM, 1980
- MonitorsCommunications of the ACM, 1974