|
The Pegasus project assesses the suitability of the OpenMP parallel
programming paradigm beyond shared-memory machines.
OpenMP is the emerging standard for shared-memory parallel programming.
We expect that, with the appropriate compiler and run-time support, it
will be possible to program "Grids" using OpenMP without a significant
loss in performance when compared to message-passing implementations.
This project will determine the degree to which this is true and the
applications and machine configurations that can benefit.
We consider both cluster (Grid-in-a-box) and geographically distributed
(Geo-grid) machine configurations.
we will also consider OpenMP extensions, where apprpriate.
Compiler techniques are at the core of the project. The Pegasus compiler
will transform regular program sections directly into message-passing code,
whereas the remaining program sections will be executed in shared-memory
manner via a software DSM system.
Using runtime adaptation techniques, an advanced compiler will attain
performance gains that, in current systems, would require time-consuming
manual tuning. Furthermore, we will make use of an expert system, making
expertise in computer performance and tuning available to scientist and
engineer end-users and thereby facilitating the program development process.
This is a collaborative project with the Univerity of Illinois.
|