Skip to content
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

Add message to maintainers about CUDA 12 transition #4527

Merged
merged 6 commits into from
Jun 2, 2023

Conversation

carterbox
Copy link
Member

@carterbox carterbox commented Jun 1, 2023

The purpose of this PR is to add more context to automigrations for CUDA 12 because the transition is more involved than just swapping out the compiler version.

Ideally, these notes would be added to the PR header, but I didn't see a key for that in the migration YAML. Maybe there is one that I don't know about?

Checklist

@carterbox carterbox requested a review from a team as a code owner June 1, 2023 00:00
@conda-forge-webservices
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

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 Daniel! 🙏

Think we need to tweak the formatting for YAML to handle this correctly

Also changed libblas to libcublas and spaced out the link (to avoid rendering issues)

recipe/migrations/cuda120.yaml Outdated Show resolved Hide resolved
@carterbox carterbox marked this pull request as draft June 1, 2023 00:15
@carterbox
Copy link
Member Author

I feel like there may be other useful information to add to this text.

For example, adding something about the headers moving around? It seems that the headers files for libcublas-dev are located in $PREFIX/targets/x86-linux/include instead of $PREFIX/include. I'm not sure whether this intentionally breaks packaging convention for our channel.

@jakirkham
Copy link
Member

With previous CUDA versions, the headers came from the Docker image (so were not in $PREFIX/include)

In CUDA 12, the headers are supplied. However they are supplied in architecture specific directories to enable cross-compilation (amongst other things)

Some context in issue ( conda-forge/cuda-nvcc-feedstock#12 ). Though there were other discussions prior

@jakirkham
Copy link
Member

If you are ok with the suggestion above, perhaps we can commit that and then discuss changes on top of the new PR diff?

Would be good to address the YAML formatting issues first (since those unfortunately affect the diff of the whole message 😞)

carterbox and others added 2 commits May 31, 2023 19:49
Co-authored-by: jakirkham <jakirkham@gmail.com>
@carterbox
Copy link
Member Author

carterbox commented Jun 1, 2023

I don't really know what message to write about how the headers are supplied because after reading through some Issues/PRs, it's still not clear to me whether downstream maintainers are expected to add the new include path or if changes to CUDA packages are forthcoming.

A method for adding $PREFIX/target/<arch>/include to the include directories for an arbitrary package is not obvious to me because it would vary by build system and platform?

@jakirkham
Copy link
Member

jakirkham commented Jun 1, 2023

Yeah it might be better to have a CUDA 12 bringup issue. Can work on that a bit later (need to get some food)

Not expecting lots more changes to the tooling, but it kind of depends on the issues encountered in practice

We had reasonable success when building ~5 things, but now we are building ~50+ things. So it is not too surprising when increasing the number of the things we are building that we may encounter new issues that will need to be fixed (either in feedstocks or in tooling)

Edit: Probably the thing to do is open up a CUDA 12 bringup issue (on me to do) and then update the commit here to point to that (or just link it from existing PRs)

@carterbox
Copy link
Member Author

Sounds good to me, thanks for following the migration so closely!

@jakirkham
Copy link
Member

Ok have filed issue ( conda-forge/conda-forge.github.io#1963 )

Please look it over and let me know if you have questions. Happy to iterate on the content there and clarify anything else as needed 🙂

@jakirkham
Copy link
Member

Also thanks for diving in here and providing useful feedback! 🙏

@carterbox carterbox marked this pull request as ready for review June 1, 2023 15:45
@carterbox
Copy link
Member Author

I think the bringup issue is very helpful and is the best place to point maintainers.

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 Daniel! 🙏

This looks good. Had some minor tweaks.

Also thanks for reading through the CUDA 12 bringup issue ❤️

recipe/migrations/cuda120.yaml Outdated Show resolved Hide resolved
recipe/migrations/cuda120.yaml Show resolved Hide resolved
Co-authored-by: jakirkham <jakirkham@gmail.com>
@jakirkham jakirkham merged commit d003216 into conda-forge:main Jun 2, 2023
@jakirkham
Copy link
Member

Thanks Daniel! 🙏

@carterbox carterbox deleted the cuda-12-upgrad-message branch June 2, 2023 02:42
@jakirkham
Copy link
Member

Looks like the whole commit message gets added to the PR title

Here's an example PR ( conda-forge/timemory-feedstock#15 ). Also added a screenshot below

Screen Shot 2023-06-01 at 10 39 11 PM

Submitting PR ( regro/cf-scripts#1699 ) upstream to fix this

@jakirkham
Copy link
Member

Think we can improve the visibility of commit messages (like this one) by adding it to the PR body. Have tried to do this with PR ( regro/cf-scripts#1713 )

@jakirkham
Copy link
Member

jakirkham commented Jun 15, 2023

Here's an example ( conda-forge/rmm-feedstock#24 ) with the aforementioned update:

Screenshot 2023-06-14 at 7 32 15 PM

@jakirkham
Copy link
Member

Think we can tweak the formatting slightly to make the message stick out a bit more ( regro/cf-scripts#1715)

@jakirkham
Copy link
Member

After those last changes, here's a refreshed example ( conda-forge/rmm-feedstock#25 ):

Screenshot 2023-06-21 at 12 43 36 AM

@jakirkham
Copy link
Member

Have also edited the OPs of the still open PRs that preceded this change to include the updated messaging. Hopefully that provides more context for those maintainers when they are able to look

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants