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

Enable cuFile on ARM #405

Merged
merged 5 commits into from
Jul 24, 2024
Merged

Conversation

jakirkham
Copy link
Member

Fixes #339

Builds CUDA 12.2+ ARM packages with cuFile and adds cuFile as a dependency. Continues to build CUDA 11 ARM packages without cuFile.

As cuFile already has the needed logic to dlopen cuFile at runtime (with fallbacks for when it is missing), there shouldn't be any additional handling needed for legacy CUDA versions with ARM support.

@jakirkham jakirkham requested a review from a team as a code owner July 16, 2024 01:29
@jakirkham jakirkham requested a review from msarahan July 16, 2024 01:29
@jakirkham jakirkham added improvement Improves an existing functionality non-breaking Introduces a non-breaking change labels Jul 16, 2024
@jakirkham jakirkham requested a review from madsbk July 16, 2024 01:30
dependencies.yaml Outdated Show resolved Hide resolved
@jakirkham jakirkham requested a review from msarahan July 16, 2024 17:01
Copy link
Member

@madsbk madsbk left a comment

Choose a reason for hiding this comment

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

Nice, thanks @jakirkham !

@@ -4,7 +4,7 @@ files:
output: conda
matrix:
cuda: ["11.8", "12.5"]
arch: [x86_64]
arch: [aarch64, x86_64]
Copy link
Contributor

Choose a reason for hiding this comment

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

I would prefer to revert this. We don't supply ARM environment files for most RAPIDS repos. If you'd like to add ARM conda envs for all of RAPIDS, I would do that in a separate PR and track the effort in rapidsai/build-planning for all repos.

Suggested change
arch: [aarch64, x86_64]
arch: [x86_64]

Copy link
Member Author

@jakirkham jakirkham Jul 22, 2024

Choose a reason for hiding this comment

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

Given there are other users asking about ARM specifically with KvikIO (and running into issues without more explicit guidance), the environments provide a value add for them. For example: #393

Edit: That said, if there is a good way to drop CUDA 11.8 ARM, think that is worth doing as that is probably more confusing than helpful (especially given there is no cuFile for CUDA 11.8 ARM)

Copy link
Contributor

Choose a reason for hiding this comment

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

I suppose it's fine to include this. Maybe this should be done for all of RAPIDS, with a build-planning issue for tracking.

We don't have a good way to exclude (CUDA 11 + ARM), unless you create a separate file key entry for (CUDA 12 + ARM) That's not worth doing imo.

As we see increased ARM usage, it'll be somewhat helpful to have these environment files readily accessible. I have had to explain how to generate the ARM environments with rapids-dependency-file-generator before and it's a little complicated for new DFG users.

Copy link
Member Author

Choose a reason for hiding this comment

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

Agree this is a good idea

Have raised issue: rapidsai/build-planning#87

Please add anything additional to that

@jakirkham
Copy link
Member Author

Thanks all! 🙏

Anything else needed here?

@jakirkham
Copy link
Member Author

/merge

@rapids-bot rapids-bot bot merged commit 72da86c into rapidsai:branch-24.08 Jul 24, 2024
60 checks passed
@jakirkham jakirkham deleted the enable_arm_cufile branch July 24, 2024 20:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
improvement Improves an existing functionality non-breaking Introduces a non-breaking change
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Support aarch64 + libcufile
4 participants