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.

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_ARCHCompute CapabilityArchitectureExample
0N/AGPU on current machineN/A
43.0TeslaK10, Geforce GTX 650
53.5KeplerK20
63.7KeplerK80
75.0MaxwellGeforce GTX 750, Tesla M60
86.0PascalGeforce GTX 10 series, Tesla P100
97.0VoltaTesla V4
107.5TuringGeforce RTX 20 series, Tesla T4
118.0AmpereGeforce RTX 30/40 series, Tesla A100
129.0HopperTesla 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 ..

More type of GPU cards can be found on the Nvidia CUDA GPU Compute Capability page.

Compilation

After configuring the build, you can compile SpecFWAT using the following command:

make -j4
Last updated on