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

cross compile cuda support #209

Closed
wants to merge 3 commits into from
Closed

cross compile cuda support #209

wants to merge 3 commits into from

Conversation

isuruf
Copy link
Member

@isuruf isuruf commented Oct 31, 2022

Checklist

  • Used a personal fork of the feedstock to propose changes
  • Bumped the build number (if the version is unchanged)
  • Reset the build number to 0 (if the version changed)
  • 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.

cc @jakirkham, @kkraus14, @h-vetinari

@isuruf isuruf requested a review from a team as a code owner October 31, 2022 23:01
@conda-forge-linter
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.

@h-vetinari
Copy link
Member

Thanks @isuruf, that's great!

I guess one thing we have to think about is how to square this with the zip (in the current migrator) that pulls in a specific docker-image. On the arrow-feedstock I worked around this with a commit such as conda-forge/arrow-cpp-feedstock@61be739, but I think a more proper solution would be conda-forge/conda-forge-pinning-feedstock#3624

libnpp-devel-11-2-11.2.1.68-1 \
libnvjpeg-11-2-11.4.0.152-1 \
libnvjpeg-devel-11-2-11.4.0.152-1 ; do
curl -L -O https://developer.download.nvidia.com/compute/cuda/repos/rhel8/${CUDA_HOST_PLATFORM_ARCH}/${f}.${HOST_PLATFORM_ARCH}.rpm
Copy link
Contributor

Choose a reason for hiding this comment

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

So we don't need the cross-linux packages and are okay just grabbing the native packages?

Comment on lines +49 to +72
for f in cuda-cudart-11-2-11.2.72-1 \
cuda-cudart-devel-11-2-11.2.72-1\
cuda-cupti-11-2-11.2.152-1 \
cuda-driver-devel-11-2-11.2.152-1 \
cuda-nvcc-11-2-11.2.152-1 \
cuda-nvml-devel-11-2-11.2.67-1 \
cuda-nvprof-11-2-11.2.67-1 \
cuda-nvrtc-11-2-11.2.152-1 \
cuda-nvrtc-devel-11-2-11.2.152-1 \
cuda-nvtx-11-2-11.2.67-1 \
libcublas-11-2-11.3.1.68-1 \
libcublas-devel-11-2-11.3.1.68-1 \
libcufft-11-2-10.4.1.152-1 \
libcufft-devel-11-2-10.4.1.152-1 \
libcurand-11-2-10.2.3.152-1 \
libcurand-devel-11-2-10.2.3.152-1 \
libcusolver-11-2-11.1.0.152-1 \
libcusolver-devel-11-2-11.1.0.152-1 \
libcusparse-11-2-11.4.1.1152-1 \
libcusparse-devel-11-2-11.4.1.1152-1 \
libnpp-11-2-11.2.1.68-1 \
libnpp-devel-11-2-11.2.1.68-1 \
libnvjpeg-11-2-11.4.0.152-1 \
libnvjpeg-devel-11-2-11.4.0.152-1 ; do
Copy link
Contributor

Choose a reason for hiding this comment

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

Instead of hardcoding all of these, there's a json file in the repo that contains all of these that we could parse, for example here: https://developer.download.nvidia.com/compute/cuda/repos/rhel8/sbsa/version_11.2.2.json

It looks like we're getting the CUDA 11.2.0 versions of these packages as opposed to the 11.2.2 versions as well.

@h-vetinari
Copy link
Member

@isuruf, lemme know if there's anything I can do to help with this PR

@isuruf
Copy link
Member Author

isuruf commented Nov 2, 2022

See Keith's comment above

@h-vetinari
Copy link
Member

See Keith's comment above

I gave it a shot in #210, but I'm not sure if it's correct; I let it run during the test phase and the CI is green, so it doesn't seem too far off.

Worth noting: the manifest posted by Keith only contains one devel package (cuda-nvml-devel), whereas this PR so far has:

                        cuda-cudart-devel-11-2-11.2.72-1\
                        cuda-driver-devel-11-2-11.2.152-1 \
                        cuda-nvml-devel-11-2-11.2.67-1 \
                        cuda-nvrtc-devel-11-2-11.2.152-1 \
                        libcublas-devel-11-2-11.3.1.68-1 \
                        libcufft-devel-11-2-10.4.1.152-1 \
                        libcurand-devel-11-2-10.2.3.152-1 \
                        libcusolver-devel-11-2-11.1.0.152-1 \
                        libcusparse-devel-11-2-11.4.1.1152-1 \
                        libnpp-devel-11-2-11.2.1.68-1 \
                        libnvjpeg-devel-11-2-11.4.0.152-1

If we need to add those devel packages (most likely necessary to have the headers?!), then that needs more massaging, but shouldn't be too hard.

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.

4 participants