Skip to content

Conversation

vyasr
Copy link
Contributor

@vyasr vyasr commented Sep 29, 2025

Description

Contributes to #15170

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 and others added 7 commits September 26, 2025 23:11
Add optional DeviceMemoryResource parameters to reduce, scan, and minmax functions
in pylibcudf.reduce module. Note that scalar-returning functions (reduce, minmax)
maintain the API consistency but scalars use their own memory allocation.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
Implement DeviceMemoryResource parameters for all 6 column factory functions:
- make_empty_column
- make_numeric_column
- make_fixed_point_column
- make_timestamp_column
- make_duration_column
- make_fixed_width_column

Updated .pyx, .pxd, and .pyi files following established pattern.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
Updates column.pyx, column.pxd, and column.pyi to support DeviceMemoryResource
parameters for functions that create new columns:
- from_scalar: Create column from scalar value
- all_null_like: Create null column with same properties
- copy: Deep copy of column

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
- Add DeviceMemoryResource parameter to unpack() function
- Add DeviceMemoryResource parameter to unpack_from_memoryviews() function
- Update TableWithMetadata.from_libcudf calls to pass memory resource
- Ensure proper memory resource handling for serialization operations

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
This commit addresses critical inconsistencies between C++ headers and
Cython bindings that were found during systematic verification:

- column_factories.pxd: Remove incorrect stream/mr parameters from
  make_empty_column declarations to match C++ API (these functions
  don't accept these parameters in libcudf)
- column_factories.pyx: Remove corresponding incorrect parameters
  from make_empty_column function calls
- contiguous_split.pxd: Add missing stream/mr parameters to pack
  and contiguous_split function declarations
- contiguous_split.pyx: Add missing DeviceMemoryResource parameter
  to pack function signature and fix C++ call
- column.pyx: Fix make_column_from_scalar calls to include missing
  mr.get_mr() parameter (was causing compilation errors)
- reduce.pxd: Add missing reduce function overload with init parameter

All changes ensure Cython bindings correctly expose the underlying
C++ APIs with proper DeviceMemoryResource parameter forwarding.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
- contiguous_split.pyx: Remove unused mr parameter from unpack function
- reduce: Add optional init parameter with conditional C++ overload calls

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
@vyasr vyasr self-assigned this Sep 29, 2025
@vyasr vyasr requested a review from a team as a code owner September 29, 2025 15:49
@vyasr vyasr added the feature request New feature or request label Sep 29, 2025
@vyasr vyasr added the non-breaking Non-breaking change label Sep 29, 2025
@github-actions github-actions bot added Python Affects Python cuDF API. pylibcudf Issues specific to the pylibcudf package labels Sep 29, 2025
@GPUtester GPUtester moved this to In Progress in cuDF Python Sep 29, 2025
@vyasr
Copy link
Contributor Author

vyasr commented Sep 29, 2025

/merge

1 similar comment
@mroeschke
Copy link
Contributor

/merge

@rapids-bot rapids-bot bot merged commit 06427ab into rapidsai:branch-25.12 Sep 29, 2025
130 checks passed
@github-project-automation github-project-automation bot moved this from In Progress to Done in cuDF Python Sep 29, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature request New feature or request non-breaking Non-breaking change pylibcudf Issues specific to the pylibcudf package Python Affects Python cuDF API.
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

3 participants