Repository navigation
Ensure librapidsmpf supports the same UCX version range as libucxx - #1271
Merged
rapids-bot[bot] merged 7 commits intoOct 22, 2026
Merged
Conversation
The bare ucx host dependency exports a run requirement of ucx >=<build version>,<next minor>. Built against ucx 1.22.0 this becomes ucx >=1.22.0, which conflicts with libucxx excluding ucx 1.22.0 (rapidsai/ucxx#784). Let libucxx define the supported UCX range. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
TomAugspurger
requested review from
jameslamb
and removed request for
jameslamb
October 21, 2026 14:19
run_exports in librapidsmpfrun_exports in librapidsmpf conda recipe
librapidsmpf.so links libucp directly, so the overlinking check needs ucx as a run dependency now that its run_export is ignored. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Slow CI runners hit the 30s timeout in ConcurrentShuffle and ShufflerManyStreams. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This reverts commit b53d7e7.
BufferResource::create checks pinned memory support before validating max_pool_size, so on systems without pinned memory support it throws std::runtime_error instead of std::invalid_argument. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
nirandaperera
approved these changes
Oct 22, 2026
jameslamb
reviewed
Oct 22, 2026
| - libpmix-devel >=5.0,<6.0 | ||
| - librmm =${{ minor_version }} | ||
| - libucxx ${{ ucxx_version }} | ||
| - ucx |
Member
There was a problem hiding this comment.
I just pushed 45f876e removing ucx from the host environment.
Here's what I think is happening:
- Upgrade conda builds to latest rattler-build #1258 added
ucxto the host environment explicitly - as a result,
ucx's run_exports make it intolibrapidsmpf's runtime dependencies (run_exports only get triggered if you explicitly list something in a recipe) - at that time, the latest was v1.22.0, so that got pulled in, resulting in this:
│ ucx ┆ >=1.22.0,<1.23.0a0 (RE of [host: ucx]) │
- In Exclude
ucx=1.22.0from supported versions. ucxx#784,libucxxexplicitly added a!=1.22.0to skip thatucxversion - sad, now anything depending on
librapidsmpfandlibucxxhas to fall back to older versions of one of them because they have incompatible requirements (<- bad and not sustainable!)
We should be grateful, this is actually a packaging bug. It meant that librapidsmpf and anything depending on it would have had a constraint of "only very-new UCX", so e.g. you couldn't create an environment with cudf-polars and ucx=1.20 or similar.
Member
There was a problem hiding this comment.
So far, this is looking better 😁
librapidsmpf packages getting a ucx * pin (so no new constraint, totally relying on whatever libucxx supports):
Finalized run dependencies (librapidsmpf-26.12.00a57-cuda12_261022144244_45f876e1):
╭──────────────────┬───────────────────────────────────────────────╮
│ Name ┆ Spec │
╞══════════════════╪═══════════════════════════════════════════════╡
│ Run dependencies ┆ │
│ cuda-cupti ┆ * │
│ cuda-version ┆ >=12,<13.0a0 (PC) │
...
│ libucxx ┆ 0.53.* │
│ ┆ >=0.53.0a28,<0.54.0a0 (RE of [host: libucxx]) │
│ ┆ >=0.53.0a28,<0.54.0a0 (RE of [host: libucxx]) │
│ openmpi ┆ >=5.0 │
│ ucx ┆ * │
╰──────────────────┴───────────────────────────────────────────────╯
21 of 26 tasks
run_exports in librapidsmpf conda recipelibrapidsmpf supports the same UCX version range as libucxx
Contributor
Author
|
/merge |
1 similar comment
Member
|
/merge |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This removes
ucxfrom thehostsection of librapidsmpf's conda recipe.rapidsai/ucxx@86378fa is a recent commit to ucxx to exclude a
ucx==1.20.0. See the linked issue for more on why, but the tl/dr is that it caused segfaults in rapidsmpf and cudf. That was merged yesterday.https://github.com/NVIDIA/cudf/actions/runs/39553618541/job/119068217342#step:13:180 is today's nightly cudf run which, despite running after the ucxx commit, picked up the old libucxx (0.53.00a27 instead of 0.53.00a28).
#1271 (comment) has details on why this fixes the issue.
I expect this to fix the cudf nightlies and potentially the build error on rapidsmpf main: https://github.com/rapidsai/rapidsmpf/actions/runs/39506224519/job/118915813636