cudaPackages: fix version solving (again)#282185
Conversation
Now:
❯ nix eval -f . --arg config '{ allowUnfree = true; }' cudaPackagesGoogle.cudnn_8_6.outPath
"/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-cudnn-8.6.0.163"
Previously:
meta.broken = true
c41b8f5 to
47d7d7f
Compare
...including jetson
Previously:
❯ nix eval -f . --argstr system aarch64-linux --arg config '{ cudaCapabilities = [ "6.2" ]; cudaEnableForwardCompat = false; cudaSupport = true; allowUnfree = true; }' -L cudaPackagesGoogle.cudnn_8_6.outPath
attribute ... in selection path .... not found
Now:
❯ nix eval -f . --argstr system aarch64-linux --arg config '{ cudaCapabilities = [ "6.2" ]; cudaEnableForwardCompat = false; cudaSupport = true; allowUnfree = true; }' -L cudaPackagesGoogle.cudnn_8_6.outPath
error: Package ‘cudnn-8.6.0.163’ in ... is not available on the requested hostPlatform:
47d7d7f to
5cf0f04
Compare
|
Important This review was run against commit 5cf0f04. Note Template PR="282185"; \
SYSTEM="aarch64-linux"; \
CUDA_SUPPORT="true"; \
CUDA_CAPABILITIES='[ "7.5" ]'; \
nixpkgs-review pr "$PR" \
--system "$SYSTEM" \
--no-shell \
--checkout commit \
--allow aliases \
--build-args "--max-jobs 1" \
--skip-package-regex 'python3(\d){1,2}Packages\.(pytorch-pfn-extras|ffcv)' \
--skip-package-regex 'python3(\d){1,2}Packages\.(shap|mlflow|optuna)' \
--extra-nixpkgs-config "{
allowUnfree = true;
allowBroken = false;
cudaSupport = ${CUDA_SUPPORT:-false};
cudaCapabilities = ${CUDA_CAPABILITIES:-[]};
}"The packages Template log archival command: PR="282185"; \
RUN_NUMBER="13"; \
SYSTEM="aarch64-linux"; \
CUDA_CAPABILITIES="7_5"; \
tar -cvf "$SYSTEM-cap-$CUDA_CAPABILITIES-pr-$PR-$RUN_NUMBER.tar.zst" \
-I "zstd -T0 --ultra -22" \
-C "$HOME/.cache/nixpkgs-review/pr-$PR-$RUN_NUMBER" \
.Logs are made available at https://drive.google.com/drive/folders/1GgABhwa2ooKeZXMqf5He6PcyClNrE6cQ?usp=share_link ✅
|
|
EDIT: logs at https://gist.github.com/SomeoneSerge/967092ecce825268e0c4abf86aab1a7b Result of 269 packages marked as broken and skipped:
5 packages failed to build:
100 packages built:
|
|
Merging to unbreak tensorflow with |
|
Forgot to hit the approve button, but wanted to be clear that this was good to merge as it was! |
Description of changes
A follow up to #281806, closes #281568 (urgent!), but does not solve anything at the root really. Our version selection logic remains needlessly complex, brittle, and slow. I probably made it slower. Really, it hurts me a lot that in spite of all the effort multiple people have put into this, we're still where we are
Ridiculously, we never even wrote a unit test for the solving part
CC @NixOS/cuda-maintainers @ConnorBaker
Things done
BuiltEval-ed on platform(s)nix.conf? (See Nix manual)sandbox = relaxedsandbox = truenix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/)Add a 👍 reaction to pull requests you find important.