-
Notifications
You must be signed in to change notification settings - Fork 915
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
Move compute_column API out of ast namespace #8957
Move compute_column API out of ast namespace #8957
Conversation
@harrism you requested a better name for the @jlowe I've updated the JNI bindings, so we should be good to go for now. If the function name changes I'll attempt to propagate that through as well, but I may need a bit of help with that to make sure that I get everything since that will also affect all the Java code using this API (right now the change is just a namespace change when calling the C++ API, which is internal to the JNI). |
Codecov Report
@@ Coverage Diff @@
## branch-21.10 #8957 +/- ##
===============================================
Coverage ? 10.61%
===============================================
Files ? 116
Lines ? 19003
Branches ? 0
===============================================
Hits ? 2017
Misses ? 16986
Partials ? 0 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.
Looks good. Not sure if I understand why the changes are made, but PR itself is 👍
This API just says "compute a new column by performing some operation on the rows of a table", which is essentially the same as |
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.
CMake changes LGTM
@gpucibot merge |
@gpucibot merge |
The `compute_column` API is functionally analogous to `cudf::transform`, except that the former expresses the transformation in terms of a cudf expression while the latter accepts string UDFs to be JITted and evaluated. Moving `compute_column` into `transform.hpp` means that the only public APIs in the `ast` namespace are those required to _define_ an expression, so we clearly separate the logic for defining and parsing of expressions from APIs (like conditional joins and `compute_column`) that evaluate those expressions on device and then use the output in different ways. Authors: - Vyas Ramasubramani (https://github.com/vyasr) Approvers: - Jason Lowe (https://github.com/jlowe) - Vukasin Milovanovic (https://github.com/vuule) - Robert Maynard (https://github.com/robertmaynard) - Paul Taylor (https://github.com/trxcllnt) - Ray Douglass (https://github.com/raydouglass) URL: rapidsai#8957
The
compute_column
API is functionally analogous tocudf::transform
, except that the former expresses the transformation in terms of a cudf expression while the latter accepts string UDFs to be JITted and evaluated. Movingcompute_column
intotransform.hpp
means that the only public APIs in theast
namespace are those required to define an expression, so we clearly separate the logic for defining and parsing of expressions from APIs (like conditional joins andcompute_column
) that evaluate those expressions on device and then use the output in different ways.Contributes to #8145.