From fca9a6cbbe49b5ebd4c3fe596d4ed0d77def63d8 Mon Sep 17 00:00:00 2001 From: Ari Lotter Date: Wed, 23 Jul 2025 12:50:29 -0400 Subject: [PATCH] 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. --- pkgs/development/cuda-modules/packages/nccl.nix | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/pkgs/development/cuda-modules/packages/nccl.nix b/pkgs/development/cuda-modules/packages/nccl.nix index 871e06a90b09..2be91591f282 100644 --- a/pkgs/development/cuda-modules/packages/nccl.nix +++ b/pkgs/development/cuda-modules/packages/nccl.nix @@ -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 = [