Skip to content

Add UCXX and NCCL to libraft conda recipe#2636

Merged
rapids-bot[bot] merged 2 commits intorapidsai:branch-25.06from
divyegala:ucxx-nccl-in-libraft-recipe
Apr 16, 2025
Merged

Add UCXX and NCCL to libraft conda recipe#2636
rapids-bot[bot] merged 2 commits intorapidsai:branch-25.06from
divyegala:ucxx-nccl-in-libraft-recipe

Conversation

@divyegala
Copy link
Member

libraft recipe installs the distributed component

cmake --install cpp/build --component distributed
which has a build and runtime dependency on targets from NCCL and ucxx as seen here

raft/cpp/CMakeLists.txt

Lines 392 to 406 in 902ed56

rapids_export_package(
BUILD ucxx raft-distributed-exports COMPONENTS ucxx python GLOBAL_TARGETS ucxx::ucxx ucxx::python
)
rapids_export_package(
INSTALL ucxx raft-distributed-exports COMPONENTS ucxx python GLOBAL_TARGETS ucxx::ucxx
ucxx::python
)
rapids_export_package(BUILD NCCL raft-distributed-exports)
rapids_export_package(INSTALL NCCL raft-distributed-exports)
# ucx is a requirement for raft_distributed, but its config is not safe to be found multiple times,
# so rather than exporting a package dependency on it above we rely on consumers to find it
# themselves. Once https://github.com/rapidsai/ucxx/issues/173 is resolved we can export it above
# again.
target_link_libraries(raft_distributed INTERFACE ucx::ucp ucxx::ucxx NCCL::NCCL)

cc @gforsyth @bdice

@divyegala divyegala added bug Something isn't working non-breaking Non-breaking change labels Apr 16, 2025
@divyegala divyegala self-assigned this Apr 16, 2025
@divyegala divyegala requested a review from a team as a code owner April 16, 2025 16:36
@divyegala divyegala requested a review from gforsyth April 16, 2025 16:36
Copy link
Contributor

@gforsyth gforsyth left a comment

Choose a reason for hiding this comment

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

The changes look good overall @divyegala -- there are a few additional changes we need to make to avoid overconstraining outputs, and then some small style changes.

Anything in the cache host dependencies that has a run export is inherited by all the outputs.

Can you add nccl to the ignore_run_exports for the libraft-tests, libraft, and libraft-static outputs?

@divyegala
Copy link
Member Author

@gforsyth thanks for your review! I incorporated your change requests. Let me know what else this PR needs.

Copy link
Contributor

@gforsyth gforsyth left a comment

Choose a reason for hiding this comment

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

Looks good to go if CI is green!

@divyegala
Copy link
Member Author

/merge

@rapids-bot rapids-bot bot merged commit 803a46a into rapidsai:branch-25.06 Apr 16, 2025
80 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working non-breaking Non-breaking change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants