nixpkgs/pkgs/top-level/release-cuda.nix
Pyrox 96430ae134
python312Packages.libgpuarray: drop
The package has not been maintained aside from small bugfixes and
formatting fixes, and is not depended on by anything else, therefore it
should be good to drop now.
2024-08-03 22:20:45 -04:00

163 lines
4.0 KiB
Nix

/*
Test CUDA packages.
This release file is currently not tested on hydra.nixos.org
because it requires unfree software, but it is tested by
https://hydra.nix-community.org/jobset/nixpkgs/cuda-nixos-unstable.
Cf. https://github.com/nix-community/infra/pull/1335
Test for example like this:
$ hydra-eval-jobs pkgs/top-level/release-cuda.nix -I .
*/
let
ensureList = x: if builtins.isList x then x else [ x ];
allowUnfreePredicate =
p:
builtins.all (
license:
license.free
|| builtins.elem license.shortName [
"CUDA EULA"
"cuDNN EULA"
"cuTENSOR EULA"
"NVidia OptiX EULA"
]
) (ensureList p.meta.license);
in
{
# The platforms for which we build Nixpkgs.
supportedSystems ? [
"x86_64-linux"
"aarch64-linux"
],
variant ? "cuda",
# Attributes passed to nixpkgs.
nixpkgsArgs ? {
config = {
inherit allowUnfreePredicate;
"${variant}Support" = true;
inHydra = true;
};
},
}:
assert builtins.elem variant [
"cuda"
"rocm"
null
];
let
release-lib = import ./release-lib.nix { inherit supportedSystems nixpkgsArgs; };
inherit (release-lib) lib;
inherit (release-lib)
linux
mapTestOn
packagePlatforms
pkgs
;
# Package sets to evaluate whole
packageSets = builtins.filter (lib.strings.hasPrefix "cudaPackages") (builtins.attrNames pkgs);
evalPackageSet = pset: mapTestOn { ${pset} = packagePlatforms pkgs.${pset}; };
jobs =
mapTestOn {
blas = linux;
blender = linux;
faiss = linux;
lapack = linux;
magma = linux;
mpich = linux;
openmpi = linux;
ucx = linux;
opencv = linux;
cctag = linux; # Failed in https://github.com/NixOS/nixpkgs/pull/233581
cholmod-extra = linux;
colmap = linux;
ctranslate2 = linux;
deepin.image-editor = linux;
ffmpeg-full = linux;
gimp = linux;
gpu-screen-recorder = linux;
gst_all_1.gst-plugins-bad = linux;
lightgbm = linux;
llama-cpp = linux;
meshlab = linux;
monado = linux; # Failed in https://github.com/NixOS/nixpkgs/pull/233581
noisetorch = linux;
obs-studio-plugins.obs-backgroundremoval = linux;
ollama = linux;
onnxruntime = linux;
openmvg = linux;
openmvs = linux;
opentrack = linux;
openvino = linux;
pixinsight = linux; # Failed in https://github.com/NixOS/nixpkgs/pull/233581
qgis = linux;
rtabmap = linux;
saga = linux;
suitesparse = linux;
truecrack-cuda = linux;
tts = linux;
ueberzugpp = linux; # Failed in https://github.com/NixOS/nixpkgs/pull/233581
wyoming-faster-whisper = linux;
xgboost = linux;
python3Packages = {
boxx = linux;
bpycv = linux;
caffe = linux;
catboost = linux;
chainer = linux;
cupy = linux;
faiss = linux;
faster-whisper = linux;
flax = linux;
gpt-2-simple = linux;
grad-cam = linux;
jaxlib = linux;
jax = linux;
Keras = linux;
kornia = linux;
mmcv = linux;
mxnet = linux;
numpy = linux; # Only affected by MKL?
onnx = linux;
triton = linux;
openai-whisper = linux;
opencv4 = linux;
opensfm = linux;
pycuda = linux;
pymc = linux;
pyrealsense2WithCuda = linux;
pytorch-lightning = linux;
pytorch = linux;
scikitimage = linux;
scikit-learn = linux; # Only affected by MKL?
scipy = linux; # Only affected by MKL?
spacy-transformers = linux;
tensorflow = linux;
tensorflow-probability = linux;
tesserocr = linux;
Theano = linux;
tiny-cuda-nn = linux;
torchaudio = linux;
torch = linux;
torchvision = linux;
transformers = linux;
ttstokenizer = linux;
vidstab = linux;
};
}
// (lib.genAttrs packageSets evalPackageSet);
in
jobs