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

Update to use Rapids 24.10 at runtime and build setup #8

Merged
merged 8 commits into from
Dec 12, 2024

Conversation

seberg
Copy link
Contributor

@seberg seberg commented Dec 3, 2024

The main change here is the build setup @jameslamb.

The pylibcudf changes were started by Matt before, the C change, is just a very simple change in public API (there is the new stream parameter).

Draft, since the update to 25.01.00.dev should happen first Ready for review, but I suspect tests will fail due to a small (fixed!) legate issue for another day.

seberg and others added 6 commits December 5, 2024 11:13
This bumps all versions to 24.08 and changes the build setup
that is now scikit-build-core based.

Signed-off-by: Sebastian Berg <[email protected]>
New cudf joins also take a stream argument, so pass it.

Signed-off-by: Sebastian Berg <[email protected]>
Signed-off-by: Sebastian Berg <[email protected]>
@seberg seberg marked this pull request as ready for review December 5, 2024 11:16
@jameslamb jameslamb self-requested a review December 5, 2024 15:40
Copy link
Member

@jameslamb jameslamb left a comment

Choose a reason for hiding this comment

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

Left some small suggestions, but overall this is great!!!

I'm really happy to see the switch to scikit-build-core and rapids-build-backend, and glad that seems like it went relatively smoothly.

@@ -89,7 +89,7 @@ test:
# import tests at build time do not work for the CUDA packages,
# because builds happen on machines without a GPU. So no tests.
commands:
- pip show legate-dataframe
- pip show legate-dataframe-cu12
Copy link
Member

Choose a reason for hiding this comment

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

This -cu{11,12} convention shouldn't be used for conda packages, since conda has a better solution for differentiating between CUDA versions (the __cuda virtual package).

To prevent these suffixes from making it into conda packages, across RAPIDS we pass this to pip install in conda builds:

--config-settings rapidsai.disable-cuda=true

Example from cudf: https://github.com/rapidsai/cudf/blob/1b82963df736f3ad71b003443a4de1414f3ce2e5/build.sh#L78

I recommend doing the same here.

common:
- output_types: [conda, requirements, pyproject]
packages:
- rapids-build-backend>=0.3.0,<0.4.0.dev0
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
- rapids-build-backend>=0.3.0,<0.4.0.dev0
- rapids-build-backend>=0.3.2,<0.4.0.dev0

Since this support is being added brand-new here, and since this project's build tool dependencies don't affect any other RAPIDS projects, I recommend going all the way to the latest version (0.3.2))

- python
- pip
Copy link
Member

Choose a reason for hiding this comment

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

I think you still need pip as a host dependency, because the build ends up invoking it:

python -m pip install --no-build-isolation --no-deps ${VERBOSE_FLAG} .

From the logs (link) it looks like you're still getting it, but maybe only transitively as a dependency of something else. It'd be better to specify it explicitly, to prevent surprises from that changing in the future (as recently happened to some projects with setuptools, e.g. rapidsai/dependency-file-generator#113 (comment)).

Legate has auto-configure now and LEGATE_CONFIG or the legate must be
used.
This was always ignored, and I am not sure that the return value was
used (or an exception was raised anyway).
Now, an exception should be raised, which should be OK everywhere.

Signed-off-by: Sebastian Berg <[email protected]>
@seberg
Copy link
Contributor Author

seberg commented Dec 12, 2024

OK, compatible legate packages are available now, so things are passing. The last commit just fixes to use void legate::start() since the other is [[deprecated]] (it actually failed the build.
That seems simple enough, so going to put this in.

@seberg seberg merged commit d43d878 into rapidsai:main Dec 12, 2024
8 checks passed
@seberg seberg deleted the rapids-24.10 branch December 12, 2024 16:58
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.

3 participants