-
Notifications
You must be signed in to change notification settings - Fork 213
chore(dev): add pixi setup for cuda-bindings #1110
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
base: main
Are you sure you want to change the base?
Conversation
Auto-sync is disabled for ready for review pull requests in this repository. Workflows must be run manually. Contributors can view more details about this message here. |
dc5b784
to
0583683
Compare
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.
Requesting changes to ensure we don't merge before 0.4.0 release again 😆
cuda_bindings/pyproject.toml
Outdated
cu13 = { features = ["all", "test"], solve-group = "cu13" } | ||
|
||
[tool.pixi.build-dependencies] | ||
cuda-toolkit = ">=13,<14" |
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 pulls in a bunch of stuff we don't want. Can you reference the libraries in the all
optional dependency group?
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.
I can't reference them in any sort automatic way, but does it matter since this is build-dependencies
?
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.
The other thing is that including cuda-toolkit
appears to set CUDA_HOME
at build time, which I need to build cuda-bindings
as part of environment activation.
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.
If there's a way to do that without including the kitchen sink, that'd be great!
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.
It matters for at least the cuda runtime library since we statically link that in
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.
Ah, ok. Then I'll have to figure out what's happening with CUDA_HOME
and how that magically works with cuda-toolkit
.
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.
Ok, I figured out the minimum set to build.
0583683
to
39c8ff6
Compare
cuda-bindings = { path = ".", editable = true } | ||
|
||
[tool.pixi.environments] | ||
cu13 = { features = ["all", "test"], solve-group = "cu13" } |
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.
Does the all
feature end up grabbing wheels or does it map to the proper conda packages as defined in build-dependencies
below?
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.
All of the pyproject.toml integration maps to pypi-dependencies
: https://pixi.sh/dev/python/pyproject_toml/#dependency-section
cu13 = { features = ["all", "test"], solve-group = "cu13" } | ||
|
||
[tool.pixi.build-dependencies] | ||
cuda-cudart-dev = ">=13,<14" |
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.
In hindsight I think we need cuda-driver-dev
since we look for cuda.h
at build time as well
abeb7cb
to
4d8f41e
Compare
This PR adds a pixi environment for cuda-bindings