Abstract | ||
---|---|---|
This paper explores the use of Proteus, an architecture-independent language suitable for prototyping parallel and distributed programs. Proteus is a high-level imperative notation based on sets and sequences with a single construct for the parallel composition of processes communicating through shared memory. Several different parallel algorithms for N-body simulation are presented in Proteus, illustrating how Proteus provides a common foundation for expressing the various parallel programming models. This common foundation allows prototype parallel programs to be tested and evolved without the use of machine-specific languages. To transform prototypes to implementations on specific architectures, program refinement techniques are utilized. Refinement strategies are illustrated that target broad-spectrum parallel intermediate languages, and their viability is demonstrated by refining an N-body algorithm to data-parallel CVL code. |
Year | DOI | Venue |
---|---|---|
1992 | 10.1109/IPPS.1992.222981 | IPPS |
Keywords | Field | DocType |
N-body problems,parallel languages,parallel programming,physics computing,software portability,software prototyping,N-body simulation,Proteus,architecture-independent language,barrier synchronisation points,data-parallel CVL code,distributed programs,high-level imperative notation,parallel algorithms,parallel intermediate languages,parallel programming,program refinement techniques,prototype parallel programs,set theoretic notation | Notation,Programming language,Proteus,Shared memory,Computer science,Parallel algorithm,N-body simulation,Parallel computing,Software prototyping,Refinement,Software portability | Conference |
ISBN | Citations | PageRank |
0-8186-2672-0 | 3 | 0.67 |
References | Authors | |
7 | 4 |
Name | Order | Citations | PageRank |
---|---|---|---|
Peter H. Mills | 1 | 16 | 2.78 |
Lars S. Nyland | 2 | 59 | 6.26 |
Jan Prins | 3 | 252 | 56.10 |
John H. Reif | 4 | 4180 | 810.75 |