-
Notifications
You must be signed in to change notification settings - Fork 165
Disable notebook execution for cuda.bindings
#424
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
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/ok to test |
63c7293
to
d944740
Compare
/ok to test |
This comment has been minimized.
This comment has been minimized.
d944740
to
18d3f92
Compare
/ok to test |
18d3f92
to
faf248b
Compare
/ok to test |
After submission of this PR and PR #398 we can switch to a non-GPU machine runner. |
This was referenced Jan 30, 2025
ksimpson-work
approved these changes
Jan 30, 2025
/ok to test |
/ok to test |
Enabling auto-merge |
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
CI/CD
CI/CD infrastructure
cuda.bindings
Everything related to the cuda.bindings module
documentation
Improvements or additions to documentation
P1
Medium priority - Should do
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
close #327
One of the benefits of using the
myst_nb
extension is that it enables you to execute code cells inside your markdown docs! By enabling code execution as part of doc builds, the consequences are that the build machines inherit new dependencies unique to those code cells. There's a natural trade-off where more detailed test cases impose more complexity to build dependencies.This feature is used by
cuda.bindings
to make sure that the CUDA Python workflow guide remains valid and executable for any user who tries running it them selves. Issue #326 points out that this guide adds the dependency that build machines must have a GPU and a valid driver.This is a rather heavy requirement because machines with GPUs are limited and are a shared resources across all CUDA Python projects. Most updates to documentation happens during a new release, and as demonstrated by the 12.8 release this is also when GPU machines are the least available. The lack of velocity in submitting updates and patching issues results in a sluggish release, motivating a change to the workflow guide or to disable notebook execution all together.
This PR elects to disable notebook execution. The workflow guide provides an end-to-end experience with details on why certain code patterns are used and how they relate to CUDA concepts. If the GPU specific sections were to be striped, the already non-intuitive low-level bindings would make it even harder to be digested by Python users. The silver lining from removing the validity check is that both Driver and NVRTC modules that are used by the workflow guide have very stable ABIs. The risk of having these code cells breaking with new
cuda.binding
release is minimal.