Computational Accelerator Physics Grand Challenge: Utilization of HPCC Technologies

HPCC Centers and Platforms
-
- For this project we have teamed with both the National Energy
Research Scientific Computing Center (NERSC) located at Lawrence
Berkeley National Laboratory and the Advanced Computing Laboratory
(ACL) located at Los Alamos
National Laboratory. At NERSC we will use two approaches: (1) High
Performance Fortran (HPF) augmented by
utility and applications
libraries, and (2) Fortran90 and C++ with message passing. At the ACL
the emphasis will be on parallel object-oriented techniques with
message passing, using both Fortran90 and the (POOMA) (Parallel
Object-Oriented Methods and Applications) framework, a parallel class
library developed at the ACL that is based on C++. In both cases our
guiding principle will be to develop portable, modular software that
can run on massively parallel processors (MPPs), shared memory
processors (SMPs), and clustered SMPs, in environments equipped with
HPF, Fortran90 with message passing, or C++ with message passing.
-
- NERSC has received a Cray T3E which, by July of 1997, will have
512 processors, a total memory of 128 GB and a theoretical peak speed
of approximately 500 GFLOPS. Though the exact details of the final ACL
platform are not known, it will initially be a cluster of several 128
processor SGI/Cray Origin 2000's with a total memory of 64+ GB and
theoretical peak speed of 200+ GFLOPS. This configuration will be
upgraded to the TFLOP range by 1998 with 250+ GB of memory. The
programming paradigm will support Fortran90 and C++ with message
passing upon which application frameworks are to be constructed.
Programming Approaches
-
- At present, there are two main parallel programming paradigms: (1)
data parallel, in which all processors execute the same instructions
or run the same programs on different data, and (2) message-passing,
where every processor can run a different program and communicates
with other processors via message-passing libraries. An example of the
data parallel approach is High Performance Fortran. The two most
popular message passing libraries are MPI and PVM.
-
- Our project is aimed at the solution of complex problems for which
no single programming approach is optimal. There are instances where
one or the other of these approaches is the most appropriate to the
specific sub-problem at hand, therefore we do not restrict ourselves
to using just one of them. A very promising approach (mixed-mode
programming) is to use a data parallel language such as HPF that
includes the ability to call other, for example message passing,
routines as needed. This is a feature of the HPF compiler from the Portland Group,
which is supported on the NERSC T3E. Another promising
approach is to use object-oriented techniques. These allow one to
write scientific programs which are easier to understand, modify,
share, explain and extend. As a result, much more ambitious
programming projects involving multiple authors can be managed.
Efforts in this realm will be carried out at the ACL using the POOMA
framework and at NERSC and the ACL using object-oriented features of
Fortran90 with message passing.
-
- Our particle simulation effort will make use of optimized routines
provided by Viktor Decyk of UCLA, who has developed a library of
subroutines useful for Particle-in-Cell (PIC) codes on massively
parallel computers. This library, called PLIB, was developed as part
of the Numerical Tokamak Project, a DOE-funded HPCC
project, and is used in several production gyrokinetic
particle codes. Written in Fortran77 with message passing, it
contains all the critical subroutines needed in a PIC code which
require communication, and can be used by someone who has no knowledge
of message-passing. This library will be used as a base code and
specialized to the needs of the accelerator community. Since it has
been written so that it could run either with a distributed memory or
a shared memory programming model, it could be
incorporated into codes which use either model. UCLA also has
considerable expertise in optimization of PIC codes for
MPPs, and is also a pioneer in using object-oriented
techniques in Fortran90. As part of this project, the PLIB
library will be modified into a class library.

Back to Background Information.
Back to main page.
Salman Habib / T-8 / LANL / habib@lanl.gov / revised March 97