-
Notifications
You must be signed in to change notification settings - Fork 927
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
Allow runtime has_nulls parameter for row operators #9623
Allow runtime has_nulls parameter for row operators #9623
Conversation
Current code reference of template approach for developer (me): https://godbolt.org/z/TbKqq6Tj6 |
Codecov Report
@@ Coverage Diff @@
## branch-22.02 #9623 +/- ##
================================================
- Coverage 10.49% 10.44% -0.05%
================================================
Files 119 119
Lines 20305 20422 +117
================================================
+ Hits 2130 2133 +3
- Misses 18175 18289 +114
Continue to review full report at Codecov.
|
Most of the changes in this PR are in headers and the .cu files were merely updated to reflect the new interfaces. There are a few files here where the new runtime (dynamic) check was employed. Here are a list of build time improvements for those files and a few others:
The libcudf.so file was also reduced by 10MB. My local build is about 200MB right now. |
@gpucibot merge |
Follow on PR for this comment: #9623 (comment) The join hasher and equality-comparator were previously hardcoded with `has_nulls=true` (and migrated to `nullate::YES`) to help minimize code size. The new `nullate::DYNAMIC` allows for runtime checking of nulls so this can now be used here instead. Authors: - David Wendt (https://github.com/davidwendt) Approvers: - Jake Hemstad (https://github.com/jrhemstad) - Vukasin Milovanovic (https://github.com/vuule) URL: #9902
Closes #6952
This PR allows the
has_nulls
template parameter for row operators to be used a runtime parameter in places where the null-handling logic has little to no affect on runtime performance.This can improve compile time as described in #6952.
This will also close #9152 and #9580