Requirements#

cuRANDDx is a CUDA C++ header only library. The list of required software to use the library includes:

  • CUDA Toolkit 11.4 or newer

  • Supported CUDA compiler (C++17 required)

  • Supported host compiler (C++17 required)

  • (Optionally) CMake (version 3.18 or greater)

Dependencies:

  • commonDx (shipped with MathDx package)

Supported Compilers#

CUDA Compilers:

  • NVCC 11.4.152+ (CUDA Toolkit 11.4 or newer)

  • (Experimental support) NVRTC 11.4.152+ (CUDA Toolkit 11.4 or newer)

Host / C++ Compilers:

  • GCC 7+

  • Clang 9+ (only on Linux/WSL2)

  • HPC SDK nvc++ 23.1+

Note

We recommend using GCC 9+ as the host compiler, and NVCC shipped with the latest CUDA Toolkit as the CUDA compiler.

Warning

Compiling cuRANDDx with MSVC on Windows has not been tested and is therefore not officially supported.

Note

cuRANDDx emits errors for unsupported versions of C++ standard. These errors could be silenced by defining CURANDDX_IGNORE_DEPRECATED_DIALECT during compilation, but cuRANDDx is not guaranteed to compile and work correctly in such configurations.