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

cuda-version host requirement v0.19.x #113

Merged
merged 3 commits into from
Jan 20, 2025

Conversation

swahtz
Copy link
Contributor

@swahtz swahtz commented Jan 16, 2025

Checklist

  • Used a personal fork of the feedstock to propose changes
  • Bumped the build number (if the version is unchanged)
  • Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
  • Ensured the license file is being packaged.

Closes #112

Add cuda-version to constrain the related cuda libraries to the same version as the cuda compiler during the build per conda-forge/conda-forge.github.io#1963

…version as the cuda compiler during the build per conda-forge/conda-forge.github.io#1963

fixes conda-forge#112

Signed-off-by: Jonathan Swartz <[email protected]>
Signed-off-by: Jonathan Swartz <[email protected]>
@conda-forge-admin
Copy link
Contributor

conda-forge-admin commented Jan 16, 2025

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/meta.yaml) and found it was in an excellent condition.

I do have some suggestions for making it better though...

For recipe/meta.yaml:

  • ℹ️ The recipe is not parsable by parser conda-souschef (grayskull). This parser is not currently used by conda-forge, but may be in the future. We are collecting information to see which recipes are compatible with grayskull.
  • ℹ️ The recipe is not parsable by parser conda-recipe-manager. The recipe can only be automatically migrated to the new v1 format if it is parseable by conda-recipe-manager.

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/12828008535. Examine the logs at this URL for more detail.

@swahtz
Copy link
Contributor Author

swahtz commented Jan 16, 2025

@conda-forge-admin please rerender

@conda-forge-admin
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/conda-forge-webservices/actions/runs/12818605971. Examine the logs at this URL for more detail.

@jakirkham
Copy link
Member

Thanks Jonathan! 🙏

This looks like the right direction

The macOS failure is probably some bug in LIEF where we need to pin it to a specific version. Can look into this more when I'm at my computer

So no need to worry about this for now

@jakirkham
Copy link
Member

Nvm think the macOS LIEF issue may be fixed with PR: conda-forge/conda-forge-repodata-patches-feedstock#947

So likely we can just restart those CI jobs later

In any event still nothing to worry about 🙂

@swahtz
Copy link
Contributor Author

swahtz commented Jan 16, 2025

Curiously there were 2 linux_64 builds that were failing these tests: test/test_ops.py::TestRoIAlign::test_autocast_cpu

I built/tested the CPU-only variant locally to try and replicate the error but the tests passed… are they are CPU hardware dependent or slightly non-deterministic?

@jakirkham
Copy link
Member

It looks like this is just a flaky test. Starting with 0.20.0, upstream skips this test with PR: pytorch/vision#8580

We could either apply that PR as a patch or we could add an argument to the test runner to skip that test

Copy link
Member

@h-vetinari h-vetinari left a comment

Choose a reason for hiding this comment

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

This should be OK, but going forward, please don't remove trailing whitespace in patch files - it can make the difference whether those can be applied or not.

Patches should be generated from a local checkout of the sources (at the tag corresponding to the version we're currently building), with the patches in the patches folder applied in sequence, and then doing something like git format-patch <tag> --no-signature, and copying the resulting files into the patches/ folder.

This has the big advantage that the above-mentioned local branch is easy to recreate for another contributor from a checkout of the feedstock, who just needs to do

git checkout $the_same_tag_in_the_sources_repo
find ../path/to/feedstock/recipe/patches/ | xargs git am

(there's an equivalent on windows too, and only git is needed, not patch etc.)

@jakirkham
Copy link
Member

jakirkham commented Jan 17, 2025

Some file editors will strip trailing blank spaces automatically. Avoiding that behavior can be tricky

Edit: Also if there is a preference on how patches are maintained here, would recommend documenting that. Adding a README.md to the patches directory would help

@h-vetinari
Copy link
Member

Avoiding that behavior can be tricky

Just don't open the patches in that editor then. They should only ever be changed by copying the results of git format-patch ....

Also if there is a preference on how patches are maintained here, would recommend documenting that. Adding a README.md to the patches directory would help

I'll write up a standard approach for the knowledge base (not as a directive for all feedstocks, but as something that maintainers can point to if they want to demand that standard)

@jakirkham
Copy link
Member

Just a note, this is a new contributor going through the process for the very first time

Having some documentation as a point of reference would be helpful. Thank you! 🙏

@hmaarrfk
Copy link
Contributor

I don't really know if this is really needed:

mamba create --name cuda_torch python=3.12 'pytorch-gpu=2.4=*cuda12*'  torchvision=0.19

seems to install things just fine.

I think pinning to cuda-version=12.0 is too strict isn't it?

Copy link
Contributor

@hmaarrfk hmaarrfk left a comment

Choose a reason for hiding this comment

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

Jakirkham responded on an other thread that this is needed.

nothing is reported on the patch application so this looks good enough for a contribution to a backported branch.

Thanks for the contribution.

@h-vetinari h-vetinari merged commit e4f0881 into conda-forge:v0.19.x Jan 20, 2025
31 checks passed
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.

5 participants