HPC++ Introduction
The High Performance C++ consortium is a group that has been working
for the last two years on the design of a standard library for parallel
processing based on the C++ language. The consortium consist of people
form research groups within Universities, Industry, and Government Labs.
The goal of this effort is to build a common foundation for constructing
portable parallel applications. The design has been partitioned into two
levels.
- Level 1 : A specification for a set of class libraries and tools that
do not require any extensions to the C++ language.
- Level 2 : The basic language extensions and runtime library needed to
implement the full Level 1 specification.
Our approcach is based on a library, HPC++Lib, which is described in detail
in a later section. The key features of HPC++Lib are:
- A Java style thread class that provides an easy way to program
parallel applications on shared memory architectures. This thread class is also
used to implement the loop parallelization transformations that are a part of the
HPC++ Level 1 specification.
- A template library to support synchronization, collective parallel
operations such as reductions and remote memory references.
- A CORBA style IDL-to-proxy generator is used to support member function
calls on objects located in remote address spaces.
Benjamin Temko
Last modified: Wed Oct 8 15:25:14 EST 1997