cuFFTMp based GROMACS builds are broken with starting with its version 11.0.5
Summary
Starting from cuFFTMp version 11.0.5 links to NVSHMEM version which splits host and device code in separate separate libs libnvshmem_host.so
, libnvshmem_device.a
. This is shipped since NVHPC SDK 23.3
https://docs.nvidia.com/hpc-sdk/cufftmp/release_notes.html#new-features
This requires either the build system to have cuda driver installed else cuFFTMp users need to explicitly link to stub versions of libnvidia-ml.so & libcuda.so which are shipped in cuda toolkit.
Exact steps to reproduce
build with cuFFTMp support along with NVHPC SDK 23.3 or higher.
For developers: Why is this important?
cuFFTMp enabled PME decomposition builds are affected.
Possible fixes
The fix for the 2023 NVHPC SDK release are these lines in the nvc++ support MR. 1.) !3779 (diffs) 2.) !3779 (diffs)