-
-
Notifications
You must be signed in to change notification settings - Fork 13.7k
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
python3Packages.jaxlib-build: share fetch derivation between different build derivations #221390
Conversation
@ofborg build python3Packages.jaxlib-build |
Based on code from NixOS#221390 by @uri-canva.
Found it: it uses go_sdk transitively, which we have to remove like we've already done in envoy and bazel watcher. This one's a bit more tricky because it's not a direct dependency but a transitive one. |
Opened an issue to discuss what we can do in general for these kind of issues: #224446. |
Got it down to one last issue: On darwin:
On linux:
Ignore the different group and slightly different display of |
Do you have a sense of why it's failing in this PR, but not when I tested it in #219778? AFAIU I used the same code as you, although I did have to update the hash value. |
It's not? I can't find ofborg builds of the derivation on the different systems, it looks like it failed the eval? |
AFAICT it only failed eval for jaxlib-bin (#219778 (comment)). The source builds worked for me with |
Oh right sorry, the part of sharing it between different configuration works, it's the part of sharing it between linux and darwin that isn't working. Unfortunately since cuda doesn't work on darwin we can't have a single hash, we need either to split it by os, linux(cuda) / macos(non-cuda), or by whether cuda support is enabled. At least that's where I'm at now. I'm rebasing the PR shortly. |
Pulled out part of the fix here: #224917 |
Ah gotcha, yeah unfortunately Darwin support is broken for the jaxlib source build atm. aarch64-darwin is not working and I don't think any of us have x86_64-darwin machines to test that build anymore :( |
9cb1430
to
072eacd
Compare
@ofborg build python3Packages.jaxlib-build |
b79cb82
to
2bb182b
Compare
@ofborg build python3Packages.jaxlib-build |
}.${stdenv.system} or (throw "unsupported system ${stdenv.system}"); | ||
"sha256:0pzy18i2pj2hf5rav9x35r44c95ww64cmzgcd0g0ljdhhk5vhaz3" | ||
else | ||
"sha256-CyRfPfJc600M7VzR3/SQX/EAyeaXRJwDQWot5h2XnFU="; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This hash matches all the systems on ofborg. Success!
"--config=avx_posix" | ||
] ++ lib.optionals cudaSupport [ | ||
# ideally we'd add this unconditionally too, but it doesn't work on darwin | ||
# we make this conditional instead of the system, so that the hash for both the cuda and the non-cuda deps |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
# we make this conditional instead of the system, so that the hash for both the cuda and the non-cuda deps | |
# we make this conditional on `cudaSupport` instead of the system, so that the hash for both the cuda and the non-cuda deps |
…t build derivations
Result of 18 packages marked as broken and skipped:
25 packages failed to build:
41 packages built:
|
Errors appear to be unrelated:
|
shockingly, python3Packages.jax is now building fine..... i expected it to fail due to #221739 |
Thanks for putting this together @uri-canva ! This change will def improve the DX when working with the jaxlib derivation |
Description of changes
Things done
sandbox = true
set innix.conf
? (See Nix manual)nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"
. Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/
)