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 #25

Merged

Conversation

regro-cf-autotick-bot
Copy link
Contributor

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/6865184761, 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

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.

@sarthakpati sarthakpati added the automerge Merge the PR when CI passes label Nov 14, 2023
Copy link
Contributor

Hi! This is the friendly conda-forge automerge bot!

I considered the following status checks when analyzing this PR:

  • linter: passed
  • azure: failed

Thus the PR was not passing and not merged.

@jakirkham
Copy link
Member

Think we need to add CUDA 12.0 to this list

export TORCH_CUDA_ARCH_LIST="3.5;5.0+PTX"
if [[ ${cuda_compiler_version} == 9.0* ]]; then
export TORCH_CUDA_ARCH_LIST="$TORCH_CUDA_ARCH_LIST;6.0;7.0"
elif [[ ${cuda_compiler_version} == 9.2* ]]; then
export TORCH_CUDA_ARCH_LIST="$TORCH_CUDA_ARCH_LIST;6.0;6.1;7.0"
elif [[ ${cuda_compiler_version} == 10.* ]]; then
export TORCH_CUDA_ARCH_LIST="$TORCH_CUDA_ARCH_LIST;6.0;6.1;7.0;7.5"
elif [[ ${cuda_compiler_version} == 11.0* ]]; then
export TORCH_CUDA_ARCH_LIST="$TORCH_CUDA_ARCH_LIST;6.0;6.1;7.0;7.5;8.0"
elif [[ ${cuda_compiler_version} == 11.1* ]]; then
export TORCH_CUDA_ARCH_LIST="$TORCH_CUDA_ARCH_LIST;6.0;6.1;7.0;7.5;8.0;8.6"
elif [[ ${cuda_compiler_version} == 11.2* ]]; then
export TORCH_CUDA_ARCH_LIST="$TORCH_CUDA_ARCH_LIST;6.0;6.1;7.0;7.5;8.0;8.6"
else
echo "unsupported cuda version. edit build.sh"
exit 1
fi

Maybe this list helps?

@github-actions github-actions bot removed the automerge Merge the PR when CI passes label Nov 17, 2023
Copy link
Contributor

Hi! This is the friendly conda-forge automerge bot!

Commits were made to this PR after the automerge label was added. For security reasons, I have disabled automerge by removing the automerge label. Please add the automerge label again (or ask a maintainer to do so) if you'd like to enable automerge again!

@sarthakpati
Copy link
Contributor

Think we need to add CUDA 12.0 to this list

export TORCH_CUDA_ARCH_LIST="3.5;5.0+PTX"
if [[ ${cuda_compiler_version} == 9.0* ]]; then
export TORCH_CUDA_ARCH_LIST="$TORCH_CUDA_ARCH_LIST;6.0;7.0"
elif [[ ${cuda_compiler_version} == 9.2* ]]; then
export TORCH_CUDA_ARCH_LIST="$TORCH_CUDA_ARCH_LIST;6.0;6.1;7.0"
elif [[ ${cuda_compiler_version} == 10.* ]]; then
export TORCH_CUDA_ARCH_LIST="$TORCH_CUDA_ARCH_LIST;6.0;6.1;7.0;7.5"
elif [[ ${cuda_compiler_version} == 11.0* ]]; then
export TORCH_CUDA_ARCH_LIST="$TORCH_CUDA_ARCH_LIST;6.0;6.1;7.0;7.5;8.0"
elif [[ ${cuda_compiler_version} == 11.1* ]]; then
export TORCH_CUDA_ARCH_LIST="$TORCH_CUDA_ARCH_LIST;6.0;6.1;7.0;7.5;8.0;8.6"
elif [[ ${cuda_compiler_version} == 11.2* ]]; then
export TORCH_CUDA_ARCH_LIST="$TORCH_CUDA_ARCH_LIST;6.0;6.1;7.0;7.5;8.0;8.6"
else
echo "unsupported cuda version. edit build.sh"
exit 1
fi

Maybe this list helps?

Thanks! I have updated the recipe - can you have a pass?

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 @sarthakpati ! 🙏

Sorry for the delay

Made a few suggestions below on similar logic found in PyTorch, which may be a better fit for our needs here

Hope that helps! Please let me know if you have any questions 🙂

recipe/build.sh Outdated
@@ -2,6 +2,9 @@ if [[ "$cuda_compiler_version" == "None" ]]; then
export FORCE_CUDA=0
else
export TORCH_CUDA_ARCH_LIST="3.5;5.0+PTX"
# Duplicate lists because of https://bitbucket.org/icl/magma/pull-requests/32
Copy link
Member

Choose a reason for hiding this comment

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

Think we can drop this comment (since this is specific to MAGMA)

recipe/build.sh Outdated
@@ -12,8 +15,16 @@ else
export TORCH_CUDA_ARCH_LIST="$TORCH_CUDA_ARCH_LIST;6.0;6.1;7.0;7.5;8.0"
elif [[ ${cuda_compiler_version} == 11.1* ]]; then
export TORCH_CUDA_ARCH_LIST="$TORCH_CUDA_ARCH_LIST;6.0;6.1;7.0;7.5;8.0;8.6"
Copy link
Member

Choose a reason for hiding this comment

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

Can drop anything before CUDA 11.2+ as conda-forge only builds for CUDA 11.2+ ( conda-forge/conda-forge-pinning-feedstock#1708 ). Should help keep this more manageable

- 11.2 # [(linux or win) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"]
- 12.0 # [(linux or win) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"]
commit_message: |
Rebuild for CUDA 12 w/arch support
Copy link
Member

Choose a reason for hiding this comment

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

Let's grab the latest migrator file from conda-forge-pinning. Not expecting a huge difference. Still handy if we add Windows later

sarthakpati and others added 7 commits November 28, 2023 15:13
Co-authored-by: jakirkham <jakirkham@gmail.com>
Co-authored-by: jakirkham <jakirkham@gmail.com>
Co-authored-by: jakirkham <jakirkham@gmail.com>
Co-authored-by: jakirkham <jakirkham@gmail.com>
Co-authored-by: jakirkham <jakirkham@gmail.com>
Co-authored-by: jakirkham <jakirkham@gmail.com>
Co-authored-by: jakirkham <jakirkham@gmail.com>
@jakirkham
Copy link
Member

Thanks Sarthak! 🙏

Would also suggest dropping any CUDA versions before 11.2 ( as CUDA 11.2 is the minimum CUDA version in conda-forge conda-forge/conda-forge-pinning-feedstock#1708 )

IOW think we can delete these lines

@sarthakpati
Copy link
Contributor

Thanks Sarthak! 🙏

Would also suggest dropping any CUDA versions before 11.2 ( as CUDA 11.2 is the minimum CUDA version in conda-forge conda-forge/conda-forge-pinning-feedstock#1708 )

IOW think we can delete these lines

Done! Is this okay, now?

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

Had a couple minor suggestions below

Generally this is looking pretty good

sarthakpati and others added 2 commits November 28, 2023 16:57
Co-authored-by: jakirkham <jakirkham@gmail.com>
Co-authored-by: jakirkham <jakirkham@gmail.com>
@sarthakpati
Copy link
Contributor

Thanks Sarthak! 🙏

Had a couple minor suggestions below

Generally this is looking pretty good

Thank you for your help with this!

@jakirkham
Copy link
Member

@conda-forge-admin , please re-render

conda-forge-webservices[bot] and others added 2 commits March 13, 2024 00:17
@sarthakpati
Copy link
Contributor

@conda-forge-admin , please re-render

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/torch-scatter-feedstock/actions/runs/8265821247.

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

Added some suggestions below to fix CI issues that cropped up

sarthakpati and others added 6 commits March 14, 2024 09:13
Co-authored-by: jakirkham <jakirkham@gmail.com>
Co-authored-by: jakirkham <jakirkham@gmail.com>
Co-authored-by: jakirkham <jakirkham@gmail.com>
Co-authored-by: jakirkham <jakirkham@gmail.com>
Co-authored-by: jakirkham <jakirkham@gmail.com>
Co-authored-by: jakirkham <jakirkham@gmail.com>
@sarthakpati
Copy link
Contributor

Thank you so much for your help @jakirkham!!! 🙏🏽

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

Looks like Python 3.8 is still failing. Would suggest we just skip Python 3.8 on Linux CUDA builds for now

Made some suggestions below

sarthakpati and others added 2 commits March 19, 2024 08:51
Co-authored-by: jakirkham <jakirkham@gmail.com>
Co-authored-by: jakirkham <jakirkham@gmail.com>
@jakirkham
Copy link
Member

@conda-forge-admin , please re-render

Copy link
Contributor

@sarthakpati sarthakpati left a comment

Choose a reason for hiding this comment

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

LGTM!

Thank you so much for your help @jakirkham!

Would you like to be a maintainer for this package? 😄

@sarthakpati sarthakpati merged commit 2f8b5c3 into conda-forge:main Mar 20, 2024
27 checks passed
@regro-cf-autotick-bot regro-cf-autotick-bot deleted the rebuild-cuda120-0-2_h857b6b branch March 20, 2024 12:49
@jakirkham
Copy link
Member

Congratulations Sarthak! 🎉

Glad we were able to get this one in 😄

As to maintainership, I'm probably on too many things already. So unfortunately will need to pass. Though am still happy to answer questions and make suggestions. Hope that is ok

@sarthakpati
Copy link
Contributor

Of course, thank you so much for all your help!

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.

3 participants