Skip to Content
DocumentationinstallationBuild and Compilation

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_ARCHArchitectureExample
0GPU on current machineN/A
4TeslaK10, Geforce GTX 650
5KeplerK20
6KeplerK80
7MaxwellGeforce GTX 750, Tesla M60
8PascalGeforce GTX 1080, Tesla P100
9VoltaTesla V4
10TuringGeforce RTX 2080, Tesla T4
11AmpereGeforce RTX 3080, Tesla A100
12HopperGeforce 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
Last updated on