<H1><b>Concurrent Program Archetypes</H1></b>


next up previous
Next: Introduction

Concurrent Program Archetypes

K. Mani Chandy
Computer Science, 256-80
California Institute of Technology
Pasadena, CA 91125.
mani@cs.caltech.edu

Abstract

A program archetype is (a) a program design strategy appropriate for a restricted class of problems, and (b) a collection of program designs with (c) implementations of examplar problems in one or more programming languages and optimized for a collection of target machines. The program design strategy includes archetype-specific information about methods of deriving a program from a specification, methods of parallelizing sequential programs, the program structure, methods of reasoning about correctness and performance, empirical data on performance measurements and tuning for different kinds of machines, and suggestions for test suites. This paper reports on a project at Caltech which is exploring the question: Can a library of parallel program archetypes be used to reduce the effort required to produce correct efficient programs?



mani@cs.caltech.edu