Skip to content

Build and Install

Skyler Ruiter edited this page Jul 23, 2025 · 9 revisions

Basic CMake Build and Install

git clone https://github.com/skyler-ruiter/FZModules.git FZMod
cd FZMod
cmake -S . -B build -DCMAKE_CUDA_ARCHITECTURES="80;86;89;90;100;120" -DCMAKE_INSTALL_PREFIX=[/path/to/install/dir]
cd build
make -j
make install

Additional CMake Options

  • -DCMAKE_CUDA_ARCHITECTURES="80;86;89;90;100;120" Sets the CUDA Compute Capability (ex. 86 for RTX3080Ti)
  • -DCMAKE_INSTALL_PREFIX=[/path/to/install/dir] Where the install path is located
  • -DCMAKE_BUILD_TYPE=<Debug/Release> Build a debug or release version of codebase
  • -DFZMOD_BUILD_EXAMPLES=<ON/OFF> Optionally compile the example codes
  • -DBUILD_CUDASTF=<OFF/ON> Build the CUDASTF pipeline
  • -DENABLE_COVERAGE=<OFF/ON> Enable testing coverage (through googletest)
  • -DUSE_SANITIZER=<Address/Thread/Undefined/Leak/Compute> Build for use of the sanitizers
    • WARNING these often do not play well with CUDA code, it's suggested to instead use compute-sanitizer

Notes on Dependencies

  • cmake 3.24 (needed for set(CMAKE_CUDA_ARCHITECTURES native) on line 19)

    • if needed, comment out this line and change cmake version in line 1 of CMakeLists.txt
  • CUDA Compute Capability 6.0 or greater (needed for double atomic operations)

  • C++ 17

  • Example of modules loaded on IU's BigRed200 Supercomputer (07/16/2025):

    • PrgEnv-gnu/8.3.3 gcc/12.2 cudatoolkit/12.2
    • cmake installed locally due to the highest version being 3.21

Clone this wiki locally