This dissertation addresses the problem of writing portable programs for parallel computers, including shared memory, distributed, and non-uniform memory access architectures. The basis of our approach is to separate the expression of the algorithm from the machine-dependent details that are necessary to achieve good performance. The method begins with a statement of the algorithm in a classic, explicitly parallel, manner. This basic program is then annotated to specify architecture-dependent details such as scheduling and mapping. These ideas have been cast in terms of a programming language, Par, which provides flexible facilities for a range of programming styles, from shared memory to message passing. Par is used to specify both the alg...
Parallel programming on loosely coupled distributed systems involves many system dependent tasks suc...
Traditionally, languages were created and intended for sequential machines and were, naturally, sequ...
The paper presents a parallel programming methodology that ensures easy programming, efficiency and ...
In parallel programming, the need to manage communication, load imbalance, and irregular-ities in th...
Thesis (Ph. D.)--University of Rochester. Dept. of Computer Science, 1991. Simultaneously published...
The most important features that a parallel programming language should provide are portability, mod...
We survey parallel programming models and languages using six criteria to assess their suitability ...
The most important features that a parallel programming language should provide are portability, mod...
Parallel software development must face the fact that different architectures require different impl...
Two approaches to architecture-independent parallel computation are investigated: a constructive fun...
The presence of a universal machine model for serial algorithm design, namely the von Neumann model,...
The art of designing parallel programs is underdeveloped because we do not understand parallelism c...
Parallel programming involves finding the potential parallelism in an application, choosing an algor...
Programming environments are used to bridge the gap between actual computers ad developement of thei...
An important challenge in parallel computing is the mapping of parallel algorithms to parallel compu...
Parallel programming on loosely coupled distributed systems involves many system dependent tasks suc...
Traditionally, languages were created and intended for sequential machines and were, naturally, sequ...
The paper presents a parallel programming methodology that ensures easy programming, efficiency and ...
In parallel programming, the need to manage communication, load imbalance, and irregular-ities in th...
Thesis (Ph. D.)--University of Rochester. Dept. of Computer Science, 1991. Simultaneously published...
The most important features that a parallel programming language should provide are portability, mod...
We survey parallel programming models and languages using six criteria to assess their suitability ...
The most important features that a parallel programming language should provide are portability, mod...
Parallel software development must face the fact that different architectures require different impl...
Two approaches to architecture-independent parallel computation are investigated: a constructive fun...
The presence of a universal machine model for serial algorithm design, namely the von Neumann model,...
The art of designing parallel programs is underdeveloped because we do not understand parallelism c...
Parallel programming involves finding the potential parallelism in an application, choosing an algor...
Programming environments are used to bridge the gap between actual computers ad developement of thei...
An important challenge in parallel computing is the mapping of parallel algorithms to parallel compu...
Parallel programming on loosely coupled distributed systems involves many system dependent tasks suc...
Traditionally, languages were created and intended for sequential machines and were, naturally, sequ...
The paper presents a parallel programming methodology that ensures easy programming, efficiency and ...