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

Add wheel builds to rmm #1148

Merged
merged 100 commits into from
Nov 15, 2022
Merged

Conversation

vyasr
Copy link
Contributor

@vyasr vyasr commented Nov 2, 2022

Description

This PR enables building wheels in RMM.

Checklist

  • I am familiar with the Contributing Guidelines.
  • New or existing tests cover these changes.
  • The documentation is up to date with these changes.

@vyasr vyasr marked this pull request as ready for review November 9, 2022 22:22
@vyasr vyasr requested review from a team as code owners November 9, 2022 22:22
.github/workflows/wheels.yml Outdated Show resolved Hide resolved
.github/workflows/wheels.yml Outdated Show resolved Hide resolved
python/setup.py Show resolved Hide resolved
python/CMakeLists.txt Outdated Show resolved Hide resolved
.github/workflows/wheels.yml Show resolved Hide resolved
.github/workflows/wheels.yml Show resolved Hide resolved
@vyasr vyasr requested review from sevagh and bdice November 10, 2022 20:43
from setuptools import find_packages
from skbuild import setup

import versioneer

setup(
name="rmm",
version=versioneer.get_version(),
name="rmm" + os.getenv("RAPIDS_PY_WHEEL_CUDA_SUFFIX", default=""),
Copy link
Member

Choose a reason for hiding this comment

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

Am wondering if there is a way to keep the name unchanged. Could we have a common dependency? Are there other ways to encode this information?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Could you elaborate on the solution that you are proposing with a common dependency? The purpose of this approach is to support installation into environments with different API incompatible versions of CUDA. Specifically, once we start supporting CUDA 12 we will need wheels built specifically for the appropriate CUDA major version. Without first class support in the wheel spec itself I am not sure how else we can handle this other than to have separate packages.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@jakirkham in order to expedite getting wheels done for this release I'm going to go ahead and merge this PR, but I'm happy to revise anything in follow-ups if we can come up with a better solution so please respond and continue the conversation. If we come up with something soon I would even be open to addressing it this release, although that might be tricky given how much of our wheels-related infrastructure is currently built around the -cu11 suffix (we've been cleaning lots of things up, and the suffix is configurable during builds, but I am sure we also have it hardcoded in many places like dependency installations that would also need updating).

@vyasr
Copy link
Contributor Author

vyasr commented Nov 15, 2022

@gpucibot merge

@rapids-bot rapids-bot bot merged commit 4da70d5 into rapidsai:branch-22.12 Nov 15, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
3 - Ready for review Ready for review by team CMake feature request New feature or request non-breaking Non-breaking change Python Related to RMM Python API
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants