I’m excited to announce the launch of the @NixOS/cuda-maintainers
team. Our goal is to make Nix/NixOS the first choice for users of CUDA-related software, especially in machine learning and scientific computing.
Motivation
GPUs are essential in the machine learning and scientific computing world. However, installing and managing driver versions, CUDA toolkit versions, and related software is notoriously challenging. Navigating the litany of version constraints is a massive PITA. First-class support for Nvidia/CUDA and reproducible software toolchains is a massive selling point for many in the field, and has the potential to bring in new kinds of investment and users into the Nix/NixOS ecosystem!
Taking cue from the lovely @NixOS/darwin-maintainers
and Marketing teams, it’s our mission to do the same for GPU-accelerated scientific computing!
Initial roadmap
Here are a few things on the immediate TODO list:
- CI and caching infrastructure for packages depending on CUDA. Hydra currently does not build or cache any software that depends on CUDA. See this thread.
- Create a test suite of GPU-enabled tests for software in Nixpkgs. The nix build environment does not allow any access to the GPU which means that we currently do not have any tests of actual GPU behavior.
- Nvidia “data center” driver support in NixOS so that we can use V100/A100 GPUs. See this thread.
- Upgrade the current
cudatoolkit
andcudatoolkit_11
versions in Nixpkgs. Thecudatoolkit
alias is especially outdated.
How can I help?
- Ping @samuela to join the
@NixOS/cuda-maintainers
GitHub team. - If you have spare x86_64-linux cycles to run a GitHub Actions runner, let @samuela know. If you have an Nvidia GPU as well that’s even better!
- If your academic lab or company would benefit from CUDA support and maintenance, please reach out re sponsorship. DM @samuela on Discourse!