cudaPackages.nccl: 2.26.2 -> 2.27.6

nccl 2.27.6 changed its CXXSTD from cpp11 to 14, so the workaround is no
longer required.

2.27 adds a new "symmetric" set of APIs which require their generated
script to have its shebang patched.
This commit is contained in:
Ari Lotter
2025-07-25 11:10:35 -04:00
parent e7515332eb
commit fca9a6cbbe
@@ -24,10 +24,10 @@ let
;
# versions 2.26+ with CUDA 11.x error with
# fatal error: cuda/atomic: No such file or directory
version = if cudaAtLeast "12.0" then "2.26.2-1" else "2.25.1-1";
version = if cudaAtLeast "12.0" then "2.27.6-1" else "2.25.1-1";
hash =
if cudaAtLeast "12.0" then
"sha256-iLEuru3gaNLcAdH4V8VIv3gjdTGjgb2/Mr5UKOh69N4="
"sha256-/BiLSZaBbVIqOfd8nQlgUJub0YR3SR4B93x2vZpkeiU="
else
"sha256-3snh0xdL9I5BYqdbqdl+noizJoI38mZRVOJChgEE1I8=";
in
@@ -74,12 +74,7 @@ backendStdenv.mkDerivation (finalAttrs: {
postPatch = ''
patchShebangs ./src/device/generate.py
''
# CUDA 12.8 uses GCC 14 and we need to bump C++ standard to C++14
# in order to work with new constexpr handling
+ lib.optionalString (cudaAtLeast "12.8") ''
substituteInPlace ./makefiles/common.mk \
--replace-fail "-std=c++11" "-std=c++14"
patchShebangs ./src/device/symmetric/generate.py
'';
makeFlags = [