Build and Compilation
SpecFWAT is built using CMake, a cross-platform build system. The following instructions will guide you through the process of building SpecFWAT on your system.
Create a build directory
mkdir build && cd build
Configure the build
Bascially, you can use the following command to configure the build:
cmake ..
More options
Specfiy the compiler
If you have multiple compilers installed, you can specify the Fortran and C compilers using the FC
and CC
options, respectively. For example on Niagara@CCDB:
CC=icc CXX=icpc FC=mpifort MPIFC=mpifort cmake ..
Specfiy HDF5 library
If the HDF5 library is installed in a non-standard location, you can specify the path to the HDF5 library using the HDF5_ROOT
option. For example:
cmake -DHDF5_ROOT=/path/to/hdf5 ..
Enable GPU support
Currently, SpecFWAT only supports CUDA for GPU acceleration. The CUDA architecture can be specified using the CUDA_ARCH
option. Check the table below for the supported architectures:
CUDA_ARCH | Architecture | Example |
---|---|---|
0 | GPU on current machine | N/A |
4 | Tesla | K10, Geforce GTX 650 |
5 | Kepler | K20 |
6 | Kepler | K80 |
7 | Maxwell | Geforce GTX 750, Tesla M60 |
8 | Pascal | Geforce GTX 1080, Tesla P100 |
9 | Volta | Tesla V4 |
10 | Turing | Geforce RTX 2080, Tesla T4 |
11 | Ampere | Geforce RTX 3080, Tesla A100 |
12 | Hopper | Geforce RTX 4090, Tesla H100 |
For example, to enable CUDA support and set the architecture to Ampere (A100), you can use the following command:
cmake -DUSE_CUDA=on -DCUDA_ARCH=11 ..
Compilation
After configuring the build, you can compile SpecFWAT using the following command:
make -j4