-
Notifications
You must be signed in to change notification settings - Fork 914
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Replace raw streams with rmm::cuda_stream_view (part 1) #6646
Conversation
Please update the changelog in order to start CI tests. View the gpuCI docs here. |
Codecov Report
@@ Coverage Diff @@
## branch-0.17 #6646 +/- ##
===============================================
- Coverage 82.27% 81.79% -0.48%
===============================================
Files 94 95 +1
Lines 15533 16320 +787
===============================================
+ Hits 12779 13349 +570
- Misses 2754 2971 +217
Continue to review full report at Codecov.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Two concerns:
- Discussion on default stream param in detail APIs
- Header include location and style
I moved the CMake changes out to #6732 |
This PR doesn't actually need java-codeowners or cmake-codeowners reviews, those changes have been merged separately. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
no-op Java approval
This seems to not be a problem. Everything builds OK. This is because of the implicit conversion from |
rerun tests |
I can't repro the dask_cudf test failures locally. What's up with those? |
rerun tests |
1 similar comment
rerun tests |
Converting libcudf to use rmm::cuda_stream_view will require a LOT of changes, so I'm splitting it into multiple PRs to ease reviewing. This is the second PR in the series. This series of PRs will Replace usage of cudaStream_t with rmm::cuda_stream_view Replace usage of 0 or nullptr as a stream identifier with rmm::cuda_stream_default Ensure all APIs always order the stream parameter before the memory resource parameter. #5119 Contributes to #6645 and #5119 Depends on #6646 so this PR will look much bigger until that one is merged. Also fixes #6706 (to_arrow and to_dlpack are not properly synchronized). This second PR converts: table.hpp (and source / dependencies) column_factories.hpp (and source / dependencies) headers in include/detail/aggregation (and source / dependencies) include/detail/groupby/sort_helper.hpp (and source / dependencies) include/detail/utilities/cuda.cuh (and dependencies) binary ops concatenate copy_if copy_range fill gather get_value hash groupby quantiles reductions repeat replace reshape round scatter search sequence sorting stream compaction
This PR converts all usage of cudaStream_t in cuSpatial to rmm::cuda_stream_view, following on from rapidsai/cudf#6646 and rapidsai/cudf#6648 Also reorders stream parameters to occur before MR parameters in all functions.
Converting libcudf to use `rmm::cuda_stream_view` will require a LOT of changes, so I'm splitting it into multiple PRs to ease reviewing. This is the third PR in the series. This series of PRs will - Replace usage of `cudaStream_t` with `rmm::cuda_stream_view` - Replace usage of `0` or `nullptr` as a stream identifier with `rmm::cuda_stream_default` - Ensure all APIs always order the stream parameter before the memory resource parameter. #5119 Contributes to #6645 and #5119 Depends on #6646 and #6648 so this PR will look much bigger until they are merged. This third PR converts: - remaining dictionary functionality - cuio - lists - scalar - strings - groupby - join - contiguous_split - get_element - datetime_ops - extract - merge - partitioning - minmax reduction - scan - byte_cast - clamp - interleave_columns - is_sorted - groupby - rank - tests - concurrent map classes
Converting libcudf to use
rmm::cuda_stream_view
will require a LOT of changes, so I'm splitting it into multiple PRs to ease reviewing. This is the first PR in the series. This series of PRs willcudaStream_t
withrmm::cuda_stream_view
0
ornullptr
as a stream identifier withrmm::cuda_stream_default
This first PR converts:
namespace detail
and adds streamless public versions.namespace detail
and adds streamless public versions.Contributes to #6645 and #5119
Depends on #6732.