cudaPackages.cudnn: add nvrtc to runpath

cudnn uses nvrtc at runtime on some hardware (e.g. H100). without this
runpath, we fail when triggering cudnn runtime compilation from pytorch
(see issue #461334)

closes #461334
This commit is contained in:
Ari Lotter
2025-12-16 10:55:58 -05:00
parent eb630b1434
commit d893175673
@@ -4,6 +4,7 @@
buildRedist,
lib,
libcublas,
cuda_nvrtc,
patchelf,
zlib,
}:
@@ -42,6 +43,12 @@ buildRedist (
${lib.getExe patchelf} ''${!outputLib:?}/lib/libcudnn_ops_infer.so --add-needed libcublas.so --add-needed libcublasLt.so
'';
# CuDNN depends on libnvrtc.so at runtime, as mentioned here in one small error description
# https://docs.nvidia.com/deeplearning/cudnn/backend/latest/api/cudnn-graph-library.html
appendRunpaths = [
"${lib.getLib cuda_nvrtc}/lib"
];
# NOTE:
# With cuDNN forward compatiblity, all non-natively supported compute capabilities JIT compile PTX kernels.
#