8000 refactor(rattler): remove cuda 11 branching by gforsyth · Pull Request #19039 · rapidsai/cudf · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

refactor(rattler): remove cuda 11 branching #19039

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 6 commits into from
Jun 2, 2025

Conversation

gforsyth
Copy link
Contributor
@gforsyth gforsyth commented May 29, 2025

Description

Removes all the CUDA 11 branching from the rattler-build recipe.
xref rapidsai/build-planning#184

Checklist

  • I am familiar with the Contributing Guidelines.
  • New or existing tests cover these changes.
  • The documentation is up to date with these changes.

@gforsyth gforsyth requested a review from a team as a code owner May 29, 2025 18:19
@gforsyth gforsyth added improvement Improvement / enhancement to an existing function non-breaking Non-breaking change labels May 29, 2025
@gforsyth gforsyth requested a review from KyleFromNVIDIA May 29, 2025 18:19
Copy link
Member
@jakirkham jakirkham left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Gil! 🙏

Guessing this was done with some kind of replacement script or similar, is that right? Having pure YAML definitely makes this easier to do

Think it did some things well (like requirements)

However with ignore_run_exports* it appears to have dropped some packages (especially if there was cuda_major != "11")

Also it add the compilers and C stdlib to this section, which doesn't make sense to me (though please let me know if I'm missing something). Wondering if that might also be a cause of the CI failures

In any event please take a look at the comments below and let me know what you think

Once we converge on an approach here, we should propagate it to the other PRs. Will stick to reviewing this one so we have one point of discussion until then

Comment on lines 98 to 101
- ${{ compiler("c") }}
- ${{ compiler("cxx") }}
- ${{ compiler("cuda") }}
- ${{ stdlib("c") }}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also don't think we want these here, but please correct me if I'm missing something

Suggested change
- ${{ compiler("c") }}
- ${{ compiler("cxx") }}
- ${{ compiler("cuda") }}
- ${{ stdlib("c") }}

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I added those intentionally -- rattler didn't support ignoring the compiler packages originally, but it does now so I took the opportunity to add those in.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just following up here -- this was a bit of a crossed wire in my head. There are certain outputs in certain recipes that have unnecessary run exports inherited from the compilers in the cache-build, but most outputs need those exports. I'm going through more deliberately now and fixing those up.

Comment on lines 69 to 72
- ${{ compiler("c") }}
- ${{ compiler("cxx") }}
- ${{ compiler("cuda") }}
- ${{ stdlib("c") }}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- ${{ compiler("c") }}
- ${{ compiler("cxx") }}
- ${{ compiler("cuda") }}
- ${{ stdlib("c") }}

Comment on lines 127 to 131
from_package:
- ${{ compiler("c") }}
- ${{ compiler("cxx") }}
- ${{ compiler("cuda") }}
- ${{ stdlib("c") }}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
from_package:
- ${{ compiler("c") }}
- ${{ compiler("cxx") }}
- ${{ compiler("cuda") }}
- ${{ stdlib("c") }}

Comment on lines 247 to 250
- ${{ compiler("c") }}
- ${{ compiler("cxx") }}
- ${{ compiler("cuda") }}
- ${{ stdlib("c") }}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- ${{ compiler("c") }}
- ${{ compiler("cxx") }}
- ${{ compiler("cuda") }}
- ${{ stdlib("c") }}

Comment on lines 298 to 301
- ${{ compiler("c") }}
- ${{ compiler("cxx") }}
- ${{ compiler("cuda") }}
- ${{ stdlib("c") }}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- ${{ compiler("c") }}
- ${{ compiler("cxx") }}
- ${{ compiler("cuda") }}
- ${{ stdlib("c") }}

Comment on lines 80 to 83
- ${{ compiler("c") }}
- ${{ compiler("cxx") }}
- ${{ compiler("cuda") }}
- ${{ stdlib("c") }}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- ${{ compiler("c") }}
- ${{ compiler("cxx") }}
- ${{ compiler("cuda") }}
- ${{ stdlib("c") }}

@jakirkham
Copy link
Member

Should add am enjoying watching all these CUDA 11 bit drop from our recipes. This will make them much more pleasant to maintain 🤩

@gforsyth gforsyth force-pushed the rattler_remove_cuda11 branch from 7db8b69 to c4ddc10 Compare May 30, 2025 18:13
Copy link
Member
@jakirkham jakirkham left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Gil! 🙏

This is looking better

Had a couple more questions below

Please let me know when you are ready for another look 🙂

Comment on lines 126 to 129
ignore_run_exports:
from_package:
- ${{ compiler("cuda") }}
by_name:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't think we want to ignore_run_exports from the ${{ compiler("cuda") }} package

This is a bit of a heavy hammer at this point. For example ${{ compiler("cuda") }} exports arm-variant, which differentiates Tegra and SBSA builds

So instead of this would recommend we simply ignore what we need to from ${{ compiler("cuda") }}. Namely ignoring cuda-version like so

Suggested change
ignore_run_exports:
from_package:
- ${{ compiler("cuda") }}
by_name:
ignore_run_exports:
by_name:
- cuda-version

This happens a few other places. Would recommend the same change for those as well

Comment on lines 221 to 250
requirements:
build:
- ${{ compiler("c") }}
- ${{ compiler("cuda") }}
- ${{ compiler("cxx") }}
- ${{ stdlib("c") }}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Am curious why the other compiler packages are dropped here? Also why is only ${{ compiler("cuda") }} kept?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just for future context -- my initial thought was that we could ignore all the compiler exports. That is incorrect. Then I thought we could at least ignore the cuda compiler exports, since the version pinning is handled by cuda-version, but there are recent changes to account for card variants so we want to keep the cuda compiler exports around, too.

Copy link
Member
@jakirkham jakirkham left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Gil! 🙏

LGTM

@jakirkham
Copy link
Member

There is a Spark test failure. AIUI this was fixed in PR: NVIDIA/spark-rapids-jni#3375

Think we can just try restarting after CI completes

@bdice
Copy link
Contributor
bdice commented Jun 2, 2025

Spark failures are not required to merge, and will be fixed separately. I'll go ahead and merge this.

@bdice
Copy link
Contributor
bdice commented Jun 2, 2025

/merge

@rapids-bot rapids-bot bot merged commit 0af7061 into rapidsai:branch-25.08 Jun 2, 2025
90 of 91 checks passed
@gforsyth gforsyth deleted the rattler_remove_cuda11 branch June 10, 2025 14:48
rapids-bot bot pushed a commit that referenced this pull request Jun 16, 2025
`cudf`'s dependencies on `cubinlinker` and `ptxcompiler` were removed in #19139 and #19039, as part of the effort to drop CUDA 11 support across RAPIDS (rapidsai/build-planning#184).

This proposes removing a few more uses of those libraries:

* code comments in `dependencies.yaml`
* CUDA-major-version-dependent code in `_setup_numba()`

Authors:
  - James Lamb (https://github.com/jameslamb)

Approvers:
  - Bradley Dice (https://github.com/bdice)

URL: #19177
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
improvement Improvement / enhancement to an existing function non-breaking Non-breaking change
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants
0