 |
Software for Compiling/Running Cactus
| Essential: |
C/C++, CVS, Perl 5, gmake, MPI
- CVS is just used for checking out the code and is
essential only because of its convenience.
- Just about any implementation of MPI is OK (Native, LAM, MPICH, ...)
- The flesh does not require C++, but a couple of the computational toolkit thorns require it.
|
| Needed for Real Applications: |
Fortran 90, HDF5 (with virtual file driver configured).
- Many of the Numerical Relativity thorns are written with
Fortran 90
- HDF5 is used for some output, in particular for several
of the output methods which we use for standard demonstrations.
|
| Useful: |
PETSc, PAPI, MPICH-G2, LAPACK/BLAS |
PAPI
PAPI aims to provide the tool designer and application engineer
with a consistent interface and methodology for use of the
performance counter hardware found in most major
microprocessors. We don't use in much in Cactus at the moment, but
we really want to. One problem is that it requires a patched
kernel for Linux still. PAPI can be freely downloaded from
the University of Tennessee.
HDF5
Our favorite file format for binary output data from large
simulations, HDF5 is a general purpose library and file format for
storing scientific data. HDF5 can be freely downloaded
from the NCSA. We make a lot of use of streaming data with HDF5,
this means that when it is installed the virtual file driver needs
to be configured. See the Cactus HDF5 HOWTO
for more details.
MPICH-G2
Used for coupling multiple machines for MPI runs. MPICH-G2 can
be freely downloaded
from North Illinois University.
PETSc
A suite of data structures and routines for the scalable
(parallel) solution of scientific applications modeled by partial
differential equations. Cactus uses it at the moment for solving
elliptic equations with some applications. It employs the MPI
standard for all message-passing communication. (And applications
must be compiled with the same MPI which was used for compiling
PETSc). Freely downloadable from
Argonne National Laboratory.
|