-
Notifications
You must be signed in to change notification settings - Fork 194
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
raft: Build CUDA 12 packages #1388
raft: Build CUDA 12 packages #1388
Conversation
Co-authored-by: Bradley Dice <bdice@bradleydice.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @dantegd! This looks fine to me.
with: | ||
build_type: ${{ inputs.build_type || 'branch' }} | ||
branch: ${{ inputs.branch }} | ||
date: ${{ inputs.date }} | ||
sha: ${{ inputs.sha }} | ||
skip_upload_pkgs: libraft-template | ||
docs-build: | ||
if: github.ref_type == 'branch' | ||
if: github.ref_type == 'branch' && github.event_name == 'push' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why did this change?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
that change was before I started working on the PR, I wonder if @ajschmidt8 might be able to help us here
- cuda-cudart-dev | ||
- cuda-profiler-api | ||
- libcublas-dev | ||
- libcurand-dev | ||
- libcusolver-dev | ||
- libcusparse-dev |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From what I can see of where the cudatoolkit
list is used, most of the places are runtime rather than build envs. Should we be including the non -dev
packages instead?
And if we do need the dev packages, do we need cuda-nvcc
@bdice?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is intentional. RAFT is a special case within RAPIDS because it is header-only (like RMM) and has nontrivial library dev dependencies (unlike RMM). We must have the dev packages to build RAFT, but we also list these dev packages as run dependencies for libraft-headers (but not libraft-headers-only) because they are required to use the headers. We can discuss the pros and cons of whether header-only libraries should list their dev dependencies in run (this is a choice that can go either way), but I would prefer to be as consistent as possible with past decisions for CUDA 11 and the current conda recipes for this PR, and most importantly avoid holding back merging for packaging discussions if we can defer them (to prevent blocking cuml/cugraph from starting their CUDA 12 work).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh of course wasn't thinking about the header-only bit. OK yeah that makes sense. But then practically speaking we are always going to need cuda-nvcc as well. I'm fine not listing it and leaving that to the user since it's the compiler if that's your preference.
I can't approve or request changes on my own PR, so just leaving comments. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks all! 🙏
Had a few comments/questions below
Co-authored-by: jakirkham <jakirkham@gmail.com>
Co-authored-by: jakirkham <jakirkham@gmail.com>
This comment was marked as resolved.
This comment was marked as resolved.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Think the couple CI failures are occurring because we are missing this version constraint
Co-authored-by: jakirkham <jakirkham@gmail.com>
- {{ compiler('cuda') }} {{ cuda_version }} | ||
{% if cuda_major == "11" %} | ||
- {{ compiler('cuda11') }} ={{ cuda_version }} | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Suggesting dropping this blank line (missed it in the previous suggestion 🤦)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Submitted as PR ( #1637 )
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Thanks everyone who helped make this possible!
/merge |
Thanks everyone! 🙏 |
Follow up on this review comment ( #1388 (comment) ) Authors: - https://github.com/jakirkham Approvers: - Corey J. Nolet (https://github.com/cjnolet) - Ray Douglass (https://github.com/raydouglass) URL: #1637
First attempt at building libraft with CUDA 12
Closes #1278