Skip to content
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

Refactor purge_nonempty_nulls #12111

Merged
merged 9 commits into from
Nov 16, 2022

Conversation

ttnghia
Copy link
Contributor

@ttnghia ttnghia commented Nov 9, 2022

This refactor combines the discrete interfaces of purge_nonempty_nulls that require structs/strings/lists_column_view input into just one interface accepting just column_view. This facilitates easier usage of this function. It is also a necessary step for subsequent work in fixing structs::superimpose_parent_nulls.

cudf::detail interface for this new API is also added.

@ttnghia ttnghia added 3 - Ready for Review Ready for review by team libcudf blocker libcudf Affects libcudf (C++/CUDA) code. improvement Improvement / enhancement to an existing function breaking Breaking change labels Nov 9, 2022
@ttnghia ttnghia requested a review from a team as a code owner November 9, 2022 22:00
@ttnghia ttnghia self-assigned this Nov 9, 2022
@ttnghia ttnghia requested review from vyasr and bdice November 9, 2022 22:00
@@ -80,6 +80,24 @@ bool has_nonempty_nulls(cudf::column_view const& input, rmm::cuda_stream_view st

return false;
}

std::unique_ptr<column> purge_nonempty_nulls(column_view const& input,
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is moved from the deleted file copy.cuh.

Copy link
Contributor

@davidwendt davidwendt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@ttnghia
Copy link
Contributor Author

ttnghia commented Nov 15, 2022

Rerun tests.

Copy link
Contributor

@bdice bdice left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One minor comment on docstrings, otherwise LGTM.

Someday I'd like to see the "pass-through" version of this which accepts a column && (takes ownership) and returns the existing data when possible instead of copying.

cpp/include/cudf/copying.hpp Outdated Show resolved Hide resolved
Co-authored-by: Bradley Dice <bdice@bradleydice.com>
@ttnghia
Copy link
Contributor Author

ttnghia commented Nov 16, 2022

Rerun tests.

@ttnghia
Copy link
Contributor Author

ttnghia commented Nov 16, 2022

Rerun tests.

@github-actions github-actions bot added the conda label Nov 16, 2022
@codecov
Copy link

codecov bot commented Nov 16, 2022

Codecov Report

Base: 87.47% // Head: 88.15% // Increases project coverage by +0.67% 🎉

Coverage data is based on head (c82f6a1) compared to base (f817d96).
Patch has no changes to coverable lines.

Additional details and impacted files
@@               Coverage Diff                @@
##           branch-22.12   #12111      +/-   ##
================================================
+ Coverage         87.47%   88.15%   +0.67%     
================================================
  Files               133      135       +2     
  Lines             21826    22144     +318     
================================================
+ Hits              19093    19520     +427     
+ Misses             2733     2624     -109     
Impacted Files Coverage Δ
python/cudf/cudf/core/column/interval.py 85.45% <0.00%> (-9.10%) ⬇️
python/cudf/cudf/io/text.py 91.66% <0.00%> (-8.34%) ⬇️
python/cudf/cudf/core/_base_index.py 81.28% <0.00%> (-4.27%) ⬇️
python/cudf/cudf/io/json.py 92.06% <0.00%> (-2.68%) ⬇️
python/cudf/cudf/utils/utils.py 89.91% <0.00%> (-0.69%) ⬇️
python/cudf/cudf/core/column/timedelta.py 90.17% <0.00%> (-0.58%) ⬇️
python/cudf/cudf/core/column/datetime.py 89.21% <0.00%> (-0.51%) ⬇️
python/cudf/cudf/core/column/column.py 87.96% <0.00%> (-0.46%) ⬇️
python/dask_cudf/dask_cudf/core.py 73.72% <0.00%> (-0.41%) ⬇️
python/cudf/cudf/io/parquet.py 90.45% <0.00%> (-0.39%) ⬇️
... and 43 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

☔ View full report at Codecov.
📢 Do you have feedback about the report comment? Let us know in this issue.

@ttnghia
Copy link
Contributor Author

ttnghia commented Nov 16, 2022

@gpucibot merge

Copy link
Member

@ajschmidt8 ajschmidt8 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approving ops-codeowner file changes

@rapids-bot rapids-bot bot merged commit 73d73a7 into rapidsai:branch-22.12 Nov 16, 2022
@ttnghia ttnghia deleted the refactor_purge_nulls branch November 16, 2022 21:53
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 breaking Breaking change improvement Improvement / enhancement to an existing function libcudf Affects libcudf (C++/CUDA) code.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants