Prototyping N-body simulation in Proteus


Journal Article

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.

Duke Authors

Cited Authors

  • Mills, PH; Nyland, LS; Prins, JF; Reif, JH

Published Date

  • December 1, 1992

Published In

Start / End Page

  • 476 - 482

International Standard Serial Number (ISSN)

  • 0190-3918

Citation Source

  • Scopus