CUDA
Use
-DCP2K_USE_ACCEL=CUDAto generally enable support for NVIDIA GPUsSpecify the CUDA compute capability with
-DCMAKE_CUDA_ARCHITECTURES, for example100for B200. The deprecated-DCP2K_WITH_GPUselector remains available with the values K20X, K40, K80, P100, V100, A100, H100, B200, GB10, and A40.Use
-DCP2K_USE_NVHPC=ONwhen building with the NVHPC kit.Use
-DCP2K_WITH_GPU_PROFILINGto turn on NVIDIA Tools Extensions. It requires to link-lnvToolsExt.Link to a BLAS/ScaLAPACK library that accelerates large DGEMMs (e.g., libsci_acc)
Use
-DCP2K_ENABLE_GRID_GPU=OFFto disable the GPU backend of the grid library.Use
-DCP2K_ENABLE_DBM_GPU=OFFto disable the GPU backend of the sparse tensor library.Use
-DCP2K_ENABLE_PW_GPU=OFFto disable the GPU backend of FFTs and associated gather/scatter operations.Use
-DCP2K_ENABLE_LIBXC_GPU=OFFto build without the LibXC device/GPU path (by default the device path is compiled in when building with-DCP2K_USE_ACCEL=CUDAand a CUDA-capable libxc).At runtime the LibXC backend is selected with
&XC/LIBXC_GPU_BACKEND = DEVICEorHOST. The default isHOSTand the GPU backend is only used whenDEVICEis explicitly requested. RequestingDEVICEis an error (abort) when the build has no device path or when no usable GPU is found at runtime;HOSTalways runs and touches no GPU.Use
-DCP2K_DBCSR_USE_CPU_ONLY=ONto disable the GPU backend of DBCSR.