-
Notifications
You must be signed in to change notification settings - Fork 0
Installation: External Libraries
Set the following library paths in the Makefile
to help
compiler locate them (if necessary):
CUDA_PATH :=
FFTW2_PATH :=
FFTW3_PATH :=
MPI_PATH :=
HDF5_PATH :=
GRACKLE_PATH :=
GSL_PATH :=
LIBYT_PATH :=
Only the paths of libraries being used need to be set. In addition,
it is usually unnecessary to set the paths that have been embedded
into the compiling command (e.g., when using CC
and module load
in a Cray computer system).
GAMER supports both FFTW2 and FFTW3 for various calculations (e.g., the root-level Poisson solver).
Follow the installation instructions on the FFTW website.
Note that it must be configured with
floating-point type prefix --enable-type-prefix
for FFTW2
and MPI support --enable-mpi
for both FFTW2 and FFTW3.
Here are example installation scripts using the GNU compiler for FFTW2 and FFTW3, respectively:
export FFTW_PATH=PATH_TO_INSTALL_YOUR_FFTW
export CC=gcc
export F77=gfortran
export CFLAGS=-O3
export FFLAGS=-O3
make clean
./configure --enable-mpi --enable-type-prefix --prefix $FFTW_PATH --enable-float
make
make install
make clean
./configure --enable-mpi --enable-type-prefix --prefix $FFTW_PATH
make
make install
export FFTW_PATH=PATH_TO_INSTALL_YOUR_FFTW
export CC=gcc
export F77=gfortran
export CFLAGS=-O3
export FFLAGS=-O3
make distclean
./configure --enable-openmp --enable-mpi --enable-shared --prefix $FFTW_PATH --enable-float
make
make install
make distclean
./configure --enable-openmp --enable-mpi --enable-shared --prefix $FFTW_PATH
make
make install
GAMER uses GRACKLE for the chemistry and radiative processes. Follow the installation instructions in the GRACKLE website. Note that it must be configured with a consistent floating-point accuracy as GAMER using
> make precision-{32,64}
Specifically, configure GRACKLE with make precision-64/32
when
compiling GAMER with/without the option
FLOAT8, respectively.
In addition, when enabling OpenMP in GAMER (i.e., with the compile-time option OPENMP), GRACKLE must be configured with OpenMP support as well using
> make omp-on
GAMER uses HDF5 for storing snapshots.
It is not necessary to enable either --enable-cxx
or --enable-parallel
when
configuring HDF5 since GAMER currently adopts the C interface with serial I/O.
Here is an example installation script using the icc
compiler
(remember to replace PATH_TO_INSTALL_YOUR_HDF5
with your installation path):
CC=icc ./configure --prefix=PATH_TO_INSTALL_YOUR_HDF5
make
make install
GAMER uses libyt for in situ Python analysis. See In Situ Python Analysis for details.
libyt has two modes, normal mode and interactive mode. Please refer to libyt -- How to Install.
Set LIBYT_PATH
to the folder that contains subfolders include
and lib
.
Getting Started
User Guide
- Installation
- Running the Code
- Adding New Simulations
- Runtime Parameters
- MPI and OpenMP
- GPU
- Physics Modules
- Outputs
- Simulation Logs
- Data Analysis
- In Situ Python Analysis
- Test Problems
- Troubleshooting
Advanced Topics
Developer Guide