next up previous
Next: Features Up: The HPJava Language Previous: The HPJava Language

HPspmd Programming Model

HPJava [14] is an implementation of what we call the HPspmd programming language model. This is a flexible hybrid of HPF-like data-parallel features and the popular, library-oriented, SPMD style, omitting some basic assumptions of the HPF [13] model.

To facilitate programming of massively parallel, distributed memory systems, we extend the Java language with some additional syntax and some pre-defined classes for describing distributed arrays, and for passing these as arguments to library calls. Besides distributed arrays, HPJava also includes true multi-dimensional ``sequential'' arrays--a modest extension to the standard Java language. HPJava introduces three new control constructs: the overall, at, and on statements.

Bryan Carpenter 2004-04-24