From e8f3e829a750794f42634f4975062177e7c5466f Mon Sep 17 00:00:00 2001 From: Someone Serge Date: Wed, 20 Apr 2022 22:45:16 +0300 Subject: [PATCH 1/4] cudaPackages: 11_5 -> 11_6, recover from gcc10->gcc11 11_5 is not compatible with glibc2.4 which became the default after gcc10->gcc11 bump 11_6 has a fix for glibc2.4 support cudaPackages attribute now points at cudaPackages_11_6 --- pkgs/development/compilers/cudatoolkit/versions.toml | 4 ++-- pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/compilers/cudatoolkit/versions.toml b/pkgs/development/compilers/cudatoolkit/versions.toml index 5628c323d5298..adbf3a080caef 100644 --- a/pkgs/development/compilers/cudatoolkit/versions.toml +++ b/pkgs/development/compilers/cudatoolkit/versions.toml @@ -44,13 +44,13 @@ gcc = "gcc9" version = "11.4.2" url = "https://developer.download.nvidia.com/compute/cuda/11.4.2/local_installers/cuda_11.4.2_470.57.02_linux.run" sha256 = "sha256-u9h8oOkT+DdFSnljZ0c1E83e9VUILk2G7Zo4ZZzIHwo=" -gcc = "gcc11" +gcc = "gcc10" ["11.5"] version = "11.5.0" url = "https://developer.download.nvidia.com/compute/cuda/11.5.0/local_installers/cuda_11.5.0_495.29.05_linux.run" sha256 = "sha256-rgoWk9lJfPPYHmlIlD43lGNpANtxyY1Y7v2sr38aHkw=" -gcc = "gcc11" +gcc = "gcc10" # cuda 11.5 has problems with glibc 2.4 -> keeping gcc10 ["11.6"] version = "11.6.1" diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fa8504c48010b..dd46e13dbc422 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4882,7 +4882,7 @@ with pkgs; cudaPackages_11_4 = callPackage ./cuda-packages.nix { cudaVersion = "11.4"; }; cudaPackages_11_5 = callPackage ./cuda-packages.nix { cudaVersion = "11.5"; }; cudaPackages_11_6 = callPackage ./cuda-packages.nix { cudaVersion = "11.6"; }; - cudaPackages_11 = cudaPackages_11_5; + cudaPackages_11 = cudaPackages_11_6; cudaPackages = recurseIntoAttrs cudaPackages_11; # TODO: move to alias From d5239ed8d0e6197e1123e0e61b99f58f4a0e584b Mon Sep 17 00:00:00 2001 From: Someone Serge Date: Wed, 20 Apr 2022 22:50:11 +0300 Subject: [PATCH 2/4] cudaPackages: undo the cudaPackages_11_3 fallback ...for cupy and librealsense; this commit is within the process of stabilizing after the gcc10->gcc11 bump --- pkgs/top-level/all-packages.nix | 2 -- pkgs/top-level/python-packages.nix | 6 +----- 2 files changed, 1 insertion(+), 7 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index dd46e13dbc422..692c0897e2885 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3582,7 +3582,6 @@ with pkgs; gpu-burn = callPackage ../applications/misc/gpu-burn { # gpu-burn doesn't build on gcc11. CUDA 11.3 is the last version to use # pre-gcc11, in particular gcc9. - cudatoolkit = cudaPackages_11_3.cudatoolkit; stdenv = gcc9Stdenv; }; @@ -23108,7 +23107,6 @@ with pkgs; cudaSupport = true; # librealsenseWithCuda doesn't build on gcc11. CUDA 11.3 is the last version # to use pre-gcc11, in particular gcc9. - cudaPackages = cudaPackages_11_3; stdenv = gcc9Stdenv; }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 489a250ba5e4c..4cbede6e070ef 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1958,11 +1958,7 @@ in { cufflinks = callPackage ../development/python-modules/cufflinks { }; - cupy = callPackage ../development/python-modules/cupy { - # cupy doesn't build on gcc11. CUDA 11.3 is the last version to use - # pre-gcc11, in particular gcc9. - cudaPackages = pkgs.cudaPackages_11_3; - }; + cupy = callPackage ../development/python-modules/cupy { }; curio = callPackage ../development/python-modules/curio { }; From 11ff7da635524eab596982a22cc715a5ac8b9429 Mon Sep 17 00:00:00 2001 From: Someone Serge Date: Wed, 20 Apr 2022 22:54:23 +0300 Subject: [PATCH 3/4] nccl: 2.7.8-1 -> 2.12.10-1 --- pkgs/development/libraries/science/math/nccl/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/science/math/nccl/default.nix b/pkgs/development/libraries/science/math/nccl/default.nix index c08b5aa5851dc..41dddf2391ac2 100644 --- a/pkgs/development/libraries/science/math/nccl/default.nix +++ b/pkgs/development/libraries/science/math/nccl/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { name = "nccl-${version}-cuda-${cudatoolkit.majorVersion}"; - version = "2.7.8-1"; + version = "2.12.10-1"; src = fetchFromGitHub { owner = "NVIDIA"; repo = "nccl"; rev = "v${version}"; - sha256 = "0xxiwaw239dc9g015fka3k1nvm5zyl00dzgxnwzkang61dys9wln"; + sha256 = "sha256-QqORzm0gD+QG+P8rId8bQn2oZsxL5YyxCIobUVs85wE="; }; outputs = [ "out" "dev" ]; From 92c049659a25d530bd6790e47c5f0cd3b096dbde Mon Sep 17 00:00:00 2001 From: Someone Serge Date: Thu, 21 Apr 2022 01:25:33 +0300 Subject: [PATCH 4/4] cudaPackages_11_6: better message on why gcc10 --- pkgs/development/compilers/cudatoolkit/versions.toml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/development/compilers/cudatoolkit/versions.toml b/pkgs/development/compilers/cudatoolkit/versions.toml index adbf3a080caef..46173cca12cde 100644 --- a/pkgs/development/compilers/cudatoolkit/versions.toml +++ b/pkgs/development/compilers/cudatoolkit/versions.toml @@ -50,7 +50,9 @@ gcc = "gcc10" version = "11.5.0" url = "https://developer.download.nvidia.com/compute/cuda/11.5.0/local_installers/cuda_11.5.0_495.29.05_linux.run" sha256 = "sha256-rgoWk9lJfPPYHmlIlD43lGNpANtxyY1Y7v2sr38aHkw=" -gcc = "gcc10" # cuda 11.5 has problems with glibc 2.4 -> keeping gcc10 +# cuda 11.5 has problems with glibc 2.4 -> keeping gcc10 +# cf. https://forums.developer.nvidia.com/t/cuda-11-5-samples-throw-multiple-error-attribute-malloc-does-not-take-arguments/192750/15 +gcc = "gcc10" ["11.6"] version = "11.6.1"