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

Rebuild for CUDA 12 w/arch support (+ cross-compilation) #47

Merged

Conversation

regro-cf-autotick-bot
Copy link
Contributor

@regro-cf-autotick-bot regro-cf-autotick-bot commented Aug 30, 2023

Close #35. Close #36. Close #46.

This PR has been triggered in an effort to update cuda120.

Notes and instructions for merging this PR:

  1. Please merge the PR only after the tests have passed.
  2. Feel free to push to the bot's branch to update this PR if needed.

Please note that if you close this PR we presume that the feedstock has been rebuilt, so if you are going to perform the rebuild yourself don't close this PR until the your rebuild has been merged.


Here are some more details about this specific migrator:

The transition to CUDA 12 SDK includes new packages for all CUDA libraries and build tools. Notably, the cudatoolkit package no longer exists, and packages should depend directly on the specific CUDA libraries (libcublas, libcusolver, etc) as needed. For an in-depth overview of the changes and to report problems see this issue. Please feel free to raise any issues encountered there. Thank you! 🙏


If this PR was opened in error or needs to be updated please add the bot-rerun label to this PR. The bot will close this PR and schedule another one. If you do not have permissions to add this label, you can use the phrase @conda-forge-admin, please rerun bot in a PR comment to have the conda-forge-admin add it for you.

This PR was created by the regro-cf-autotick-bot. The regro-cf-autotick-bot is a service to automatically track the dependency graph, migrate packages, and propose package version updates for conda-forge. Feel free to drop us a line if there are any issues! This PR was generated by https://github.com/regro/cf-scripts/actions/runs/6028280553, please use this URL for debugging.

The transition to CUDA 12 SDK includes new packages for all CUDA libraries and
build tools. Notably, the cudatoolkit package no longer exists, and packages
should depend directly on the specific CUDA libraries (libcublas, libcusolver,
etc) as needed. For an in-depth overview of the changes and to report problems
[see this issue]( conda-forge/conda-forge.github.io#1963 ).
Please feel free to raise any issues encountered there. Thank you! 🙏
@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.

@leofang leofang self-assigned this Aug 30, 2023
@leofang leofang marked this pull request as draft August 30, 2023 19:23
@leofang
Copy link
Member

leofang commented Aug 30, 2023

@conda-forge-admin, please rerender

conda-forge-webservices[bot] and others added 2 commits August 30, 2023 20:09
@leofang
Copy link
Member

leofang commented Aug 31, 2023

I was debugging the CI failure, and I noticed something interesting. cuQuantum DSOs have a few symbols from libm.so.6@GLIBC_2.27, however on CUDA 11 we were able to patch them out fine (which turns out to be an illusion, read on) but not on CUDA 12.

With the current CUDA 12 migrator, I find out the reason is that the aarch64/ppc64le images in use have different glibc versions:

These can be checked via either ldd --version or objdump -T /lib64/libm.so.6 (the DSO loaded at the test stage). I believe this contributes to some subtle issues that we (at least I) previously were puzzled about. This is also causing the illusion: we never patched it fully (because patchelf didn’t update .gnu.version_r table), it’s just that in the CF CI the problem is hidden due to the image in use.

Now that it's clear using glibc 2.27 for aarch64/ppc64le is inevitable, some tests have to be skipped due to lack of the infrastructure support (tracked here), which is still WIP. Since tests can't be run anyway, let me merge #36 to here and turn on cross-compilation. At least we get some speedup in CI.

MNT: Re-rendered with conda-build 3.23.1, conda-smithy 3.24.1, and conda-forge-pinning 2023.08.30.17.25.59
@leofang
Copy link
Member

leofang commented Aug 31, 2023

@conda-forge-admin, please rerender

@leofang leofang changed the title Rebuild for CUDA 12 w/arch support Rebuild for CUDA 12 w/arch support (+ cross-compilation) Aug 31, 2023
@github-actions
Copy link
Contributor

Hi! This is the friendly automated conda-forge-webservice.

I tried to rerender for you, but it looks like there was nothing to do.

This message was generated by GitHub actions workflow run https://github.com/conda-forge/cuquantum-feedstock/actions/runs/6037488949.

@leofang
Copy link
Member

leofang commented Aug 31, 2023

@conda-forge-admin, please rerender

@leofang leofang marked this pull request as ready for review August 31, 2023 14:24
@leofang
Copy link
Member

leofang commented Aug 31, 2023

Let's merge and follow up as needed.

@leofang leofang merged commit ce8944d into conda-forge:main Aug 31, 2023
19 checks passed
@regro-cf-autotick-bot regro-cf-autotick-bot deleted the rebuild-cuda120-0-2_ha54fae branch August 31, 2023 16:29
@leofang
Copy link
Member

leofang commented Sep 1, 2023

FYI the documentation for cross-compiling on conda-forge is WIP: conda-forge/conda-forge.github.io#1985

@leofang
Copy link
Member

leofang commented Sep 1, 2023

cc: @mtjrider for vis

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.

license_url doesn't work? Use cross-compilation instead
2 participants