next up previous
Next: HPspmd language extensions Up: HPspmd: Data Parallel SPMD Previous: Motivation

Objective and expected significance

Our system aims to support a programming model that is a flexible hybrid of the data-parallel, language-oriented, HPF style, and the established and popular, library-oriented, SPMD style. We refer to this model as HPspmd.

Primary goals of the current project include

  1. Providing a small set of syntax extensions to various base languages (including Java, Fortran, and C++). These syntax extensions add distributed arrays as language primitives, and introduce a few new control constructs, such as the distributed loop.
  2. Providing bindings from the extended languages to various communication and arithmetic libraries. These may include libraries modelled on, or simply new interfaces to, some subset of Adlib, CHAOS, Global Arrays, MPI, DAGH, ScaLAPACK, etc. Supporting the libraries for irregular communication will be an important goal.
  3. Testing and evaluating HPJava and the HPspmd model in general on large scale applications.

A major thrust of the proposed work will be on researching compiler (or preprocessor) support for our extended languages, and development of exemplar interfaces from the new languages to a subset of the libraries mentioned above. The research aspects of the proposed work involve investigation of compiler optimizations and safety checks peculiar to the new languages, extensions to the basic language model to improve support of irregular problems, and design of attractive class-library bindings for the various SPMD environments involved in the project.

The next four subsections overview the language extensions we are investigating, the libraries we will study, issues concerning low-level MPI programming in the proposed environment, and the parallel machine model.



Subsections
next up previous
Next: HPspmd language extensions Up: HPspmd: Data Parallel SPMD Previous: Motivation
Bryan Carpenter 2002-07-12