Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cudaPackages: 11.5 -> 11.6 and gcc11 #169484

Merged
merged 4 commits into from
Apr 21, 2022
Merged

Conversation

SomeoneSerge
Copy link
Contributor

@SomeoneSerge SomeoneSerge commented Apr 20, 2022

Description of changes

Cuda has strict requirements for the compiler and libc versions, in particular 11.5 is incompatible with glibc 2.4, but 11.6 introduces a fix for that.

This PR updates the default cudaPackages of nixpkgs from 11.5 to 11.6, resets preferred gcc versions for cuda 11.4 and 11.5 back to gcc10, and keeps gcc11 for cuda 11.6.

At first glance, this seems to fix the cuda-related breakages introduced in #165732.
Hopefully this would allow us to revert the cudaPackages_11_3 fallbacks introduced in #169279 as a fix

Waiting for the builds to finish: https://hercules-ci.com/github/SomeoneSerge/nixpkgs-unfree/jobs/449 (also a baseline)

Things done
  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 22.05 Release Notes (or backporting 21.11 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
    • (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes
  • Fits CONTRIBUTING.md.

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
...for cupy and librealsense; this commit is within the process of
stabilizing after the gcc10->gcc11 bump
@SomeoneSerge SomeoneSerge added the 6.topic: cuda Parallel computing platform and API label Apr 20, 2022
@SomeoneSerge SomeoneSerge requested a review from samuela April 20, 2022 20:16
@ofborg ofborg bot requested a review from mdaiter April 20, 2022 20:42
Copy link
Member

@samuela samuela left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Love to see it!

pkgs/development/compilers/cudatoolkit/versions.toml Outdated Show resolved Hide resolved
@samuela
Copy link
Member

samuela commented Apr 20, 2022

Ok I think if the builds check out then this is good to go!

@SomeoneSerge
Copy link
Contributor Author

SomeoneSerge commented Apr 20, 2022

Ok, so this at least unbreaks blender and librealsense, and I've built pytorch and cupy before the nccl update - this should be safe, I guess

(want this merged before 3AM UTC because this is when hercules will rebuild master again)

@SomeoneSerge SomeoneSerge marked this pull request as ready for review April 20, 2022 22:42
@samuela
Copy link
Member

samuela commented Apr 21, 2022

Result of nixpkgs-review pr 169484 run on x86_64-linux 1

2 packages marked as broken and skipped:
  • cudaPackages.nvidia_driver
  • truecrack-cuda
2 packages failed to build:
  • colmapWithCuda
  • python39Packages.tensorflowWithCuda
62 packages built:
  • cudaPackages.cuda-samples
  • cudaPackages.cuda_cccl
  • cudaPackages.cuda_cudart
  • cudaPackages.cuda_cuobjdump
  • cudaPackages.cuda_cupti
  • cudaPackages.cuda_cuxxfilt
  • cudaPackages.cuda_demo_suite
  • cudaPackages.cuda_documentation
  • cudaPackages.cuda_gdb
  • cudaPackages.cuda_memcheck
  • cudaPackages.cuda_nsight
  • cudaPackages.cuda_nvcc
  • cudaPackages.cuda_nvdisasm
  • cudaPackages.cuda_nvml_dev
  • cudaPackages.cuda_nvprof
  • cudaPackages.cuda_nvprune
  • cudaPackages.cuda_nvrtc
  • cudaPackages.cuda_nvtx
  • cudaPackages.cuda_nvvp
  • cudaPackages.cuda_sanitizer_api
  • cudatoolkit (cudaPackages.cudatoolkit ,cudatoolkit_11)
  • cudaPackages.cudnn (cudaPackages.cudnn_8_3_2)
  • cudaPackages.cutensor
  • cudaPackages.fabricmanager
  • cudaPackages.libcublas
  • cudaPackages.libcufft
  • cudaPackages.libcufile
  • cudaPackages.libcurand
  • cudaPackages.libcusolver
  • cudaPackages.libcusparse
  • cudaPackages.libnpp
  • cudaPackages.libnvidia_nscq
  • cudaPackages.libnvjpeg
  • cudaPackages.nccl
  • cudaPackages.nsight_compute
  • cudaPackages.nsight_systems
  • cudaPackages.nvidia_fs
  • ethminer (ethminer-cuda)
  • forge
  • gpu-burn
  • gromacsCudaMpi
  • gwe
  • katagoWithCuda
  • librealsenseWithCuda
  • magma
  • nvtop
  • python310Packages.TheanoWithCuda
  • python310Packages.cupy
  • python310Packages.jaxlibWithCuda
  • python310Packages.pycuda
  • python310Packages.pynvml
  • python310Packages.pyrealsense2WithCuda
  • python310Packages.pytorchWithCuda
  • python39Packages.TheanoWithCuda
  • python39Packages.cupy
  • python39Packages.jaxlibWithCuda
  • python39Packages.numbaWithCuda
  • python39Packages.pycuda
  • python39Packages.pynvml
  • python39Packages.pyrealsense2WithCuda
  • python39Packages.pytorchWithCuda
  • xpraWithNvenc

@SomeoneSerge
Copy link
Contributor Author

Colmap has been failing since gcc10 -> gcc11.
Tensorflow has been failing with this std::__throw_bad_array_new_length()@GLIBCXX_3.4.29 too

@samuela
Copy link
Member

samuela commented Apr 21, 2022

Just finished running and found the same... merging now!

@samuela samuela merged commit ee78790 into NixOS:master Apr 21, 2022
@dmizelle
Copy link
Contributor

I ran into this today when trying to build magma! Just wanted to say thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants