Skip to content

Add memory resource parameter to cudf::distinct_hash_join constructors - #23263

Merged
rapids-bot[bot] merged 2 commits into
NVIDIA:mainfrom
PointKernel:add-mr-distinct-hash-join
Jul 20, 2026
Merged

Add memory resource parameter to cudf::distinct_hash_join constructors#23263
rapids-bot[bot] merged 2 commits into
NVIDIA:mainfrom
PointKernel:add-mr-distinct-hash-join

Conversation

@PointKernel

@PointKernel PointKernel commented Jul 14, 2026

Copy link
Copy Markdown
Member

Description

Follow-up to #23220 and #23223.

This PR adds an mr parameter to the cudf::distinct_hash_join constructors to control the memory usage of the internal cuco hash table, to better align with the temporary mr effort (#20780).

Checklist

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

@copy-pr-bot

copy-pr-bot Bot commented Jul 14, 2026

Copy link
Copy Markdown

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

@github-actions github-actions Bot added the libcudf Affects libcudf (C++/CUDA) code. label Jul 14, 2026
@PointKernel PointKernel added feature request New feature or request non-breaking Non-breaking change labels Jul 14, 2026
@PointKernel

Copy link
Copy Markdown
Member Author

/ok to test d0c18c6

@PointKernel PointKernel added the 3 - Ready for Review Ready for review by team label Jul 15, 2026
@PointKernel
PointKernel marked this pull request as ready for review July 15, 2026 22:57
@PointKernel
PointKernel requested a review from a team as a code owner July 15, 2026 22:57
@coderabbitai

coderabbitai Bot commented Jul 15, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: f6bc79da-c50e-4c5a-a32c-f4791d3cde72

📥 Commits

Reviewing files that changed from the base of the PR and between 709e821 and d0c18c6.

📒 Files selected for processing (4)
  • cpp/include/cudf/detail/join/distinct_hash_join.cuh
  • cpp/include/cudf/join/distinct_hash_join.hpp
  • cpp/src/join/distinct_hash_join.cu
  • cpp/tests/join/distinct_join_tests.cpp

📝 Walkthrough

Summary by CodeRabbit

  • New Features

    • Distinct hash joins now support specifying a custom device memory resource.
    • Existing usage remains compatible through a default memory resource.
  • Bug Fixes

    • Improved memory-resource handling during hash table construction.
  • Tests

    • Added coverage verifying joins work correctly with tracked memory resources.

Walkthrough

Changes

Distinct hash join memory resource

Layer / File(s) Summary
Constructor and allocator propagation
cpp/include/cudf/detail/join/distinct_hash_join.cuh, cpp/include/cudf/join/distinct_hash_join.hpp, cpp/src/join/distinct_hash_join.cu
Distinct hash join constructors accept a device-accessible memory resource, forward it to the implementation, and use it for hash table allocation.
Memory resource validation
cpp/tests/join/distinct_join_tests.cpp
A test tracks peak allocations through a statistics resource adaptor and validates the resulting inner join.
Estimated code review effort: 3 (Moderate) ~20 minutes

Possibly related PRs

  • rapidsai/cudf#23223: Extends hash join construction with a device memory resource and propagates it to hash-table allocation.

Suggested reviewers: davidwendt, wence-

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly describes the main change: adding a memory resource parameter to distinct_hash_join constructors.
Description check ✅ Passed The description matches the changeset by explaining the new mr parameter, its purpose, and the added tests/docs.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands.

@vyasr

vyasr commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

/merge

@rapids-bot
rapids-bot Bot merged commit 49047ff into NVIDIA:main Jul 20, 2026
142 of 143 checks passed
@PointKernel
PointKernel deleted the add-mr-distinct-hash-join branch July 20, 2026 22:38
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 feature request New feature or request libcudf Affects libcudf (C++/CUDA) code. non-breaking Non-breaking change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants