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 8 commits September 29, 2025 15:49
Updated text.pyx and text.pxd to support DeviceMemoryResource for multibyte_split function:
- Added DeviceMemoryResource parameter to function signature in .pxd file
- Updated function to accept and process DeviceMemoryResource parameter
- Pass memory resource to Column.from_libcudf() for proper memory management
Updated timezone.pyx and timezone.pxd to support DeviceMemoryResource for make_timezone_transition_table function:
- Added DeviceMemoryResource parameter to function signature in .pxd file
- Updated function to accept and process DeviceMemoryResource parameter
- Pass memory resource to Table.from_libcudf() for proper memory management
- Note: C++ libcudf function does not support memory resource parameter, so we accept it for consistency but only pass it to Table.from_libcudf()
- Add DeviceMemoryResource parameter to read_parquet() function
- Add DeviceMemoryResource parameter to ChunkedParquetReader.read_chunk() method
- Update TableWithMetadata.from_libcudf calls to pass memory resource
- Enable memory-controlled parquet data loading operations

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

Co-Authored-By: Claude <[email protected]>
- Add DeviceMemoryResource parameter to read_csv() function
- Update TableWithMetadata.from_libcudf calls to pass memory resource
- Enable memory-controlled CSV data loading operations

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

Co-Authored-By: Claude <[email protected]>
- Add DeviceMemoryResource parameter to read_orc() function
- Update TableWithMetadata.from_libcudf calls to pass memory resource
- Enable memory-controlled ORC data loading operations

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

Co-Authored-By: Claude <[email protected]>
- Add DeviceMemoryResource parameter to read_avro() function
- Update TableWithMetadata.from_libcudf calls to pass memory resource
- Enable memory-controlled Avro data loading operations

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

Co-Authored-By: Claude <[email protected]>
This commit ensures comprehensive DeviceMemoryResource consistency between
C++ headers and Cython bindings across the entire pylibcudf.io subpackage.

Changes include:
- Add memory resource parameter to JSON read_json function
- Fix memory resource forwarding in ORC, Avro, and Text modules
- Update all .pxd files with missing device_memory_resource parameters
- Fix .pyx implementations to forward memory resources to C++ calls
- Update .pyi type annotations for complete API consistency
- Fix ChunkedParquetReader constructor to accept memory resource
- Resolve TableWithMetadata.from_libcudf argument count issues

All IO operations now properly support user-specified memory resources,
enabling fine-grained control over GPU memory allocation.

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

Co-Authored-By: Claude <[email protected]>
The chunked_read_json function was missing DeviceMemoryResource support,
causing it to always use the default memory resource instead of allowing
users to specify their own.

Fixed:
- Add DeviceMemoryResource parameter to function signature in .pxd file
- Update function definition in .pyx file to accept the parameter
- Forward memory resource to C++ call using mr.get_mr()
- Update type annotation in .pyi file

This completes 100% DeviceMemoryResource consistency across all
pylibcudf I/O modules that perform actual data operations.

🤖 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:50
@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 30, 2025

/merge

@rapids-bot rapids-bot bot merged commit 2fd5141 into rapidsai:branch-25.12 Sep 30, 2025
237 of 239 checks passed
@github-project-automation github-project-automation bot moved this from In Progress to Done in cuDF Python Sep 30, 2025
@vyasr vyasr deleted the feat/memory_resource_part12 branch September 30, 2025 04:17
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

Archived in project

Development

Successfully merging this pull request may close these issues.

2 participants