-
Notifications
You must be signed in to change notification settings - Fork 132
refactor[array]: move boolean ops to lazy binary expr #6447
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
Conversation
…Kernel dispatch Signed-off-by: Joe Isaacs <[email protected]> Co-Authored-By: Claude Opus 4.6 <[email protected]>
Merging this PR will degrade performance by 21%
Performance Changes
Comparing Footnotes
|
Signed-off-by: Joe Isaacs <[email protected]>
Polar Signals Profiling ResultsLatest Run
Previous Runs (4)
Powered by Polar Signals Cloud |
Benchmarks: PolarSignals ProfilingSummary
Detailed Results Table
|
Benchmarks: TPC-H SF=1 on NVMESummary
Detailed Results Table
|
Benchmarks: FineWeb NVMeSummary
Detailed Results Table
|
Benchmarks: TPC-H SF=1 on S3Summary
Detailed Results Table
|
Benchmarks: TPC-DS SF=1 on NVMESummary
Detailed Results Table
|
Benchmarks: TPC-H SF=10 on NVMESummary
Detailed Results Table
|
Benchmarks: FineWeb S3Summary
Detailed Results Table
|
vortex-array/src/compute/boolean.rs
Outdated
| fn is_elementwise(&self) -> bool { | ||
| true | ||
| } | ||
| arrow_boolean(lhs.to_array(), rhs.to_array(), op) |
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.
This should build the binary expression
Benchmarks: Statistical and Population GeneticsSummary
Detailed Results Table
|
Benchmarks: TPC-H SF=10 on S3Summary
Detailed Results Table
|
Benchmarks: CompressionSummary
Detailed Results Table
|
Benchmarks: Random AccessSummary
Detailed Results Table
|
Benchmarks: Clickbench on NVMESummary
Detailed Results Table
|
Signed-off-by: Joe Isaacs <[email protected]>
| compute::BooleanOperator::AndKleene => Ok(Operator::And), | ||
| compute::BooleanOperator::OrKleene => Ok(Operator::Or), |
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.
I know this is not part of this pr but do we differentiate between And and AndKleene in the expressions?
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.
All use kleene, I think we can rename and add the others with different enum int values
Signed-off-by: Joe Isaacs <[email protected]>
Signed-off-by: Joe Isaacs <[email protected]>
Signed-off-by: Joe Isaacs <[email protected]>
|
I will fixup between shortly |
Does this PR closes an open issue or discussion?
What changes are included in this PR?
Move over boolean compute to lazy expr comptue
What is the rationale for this change?
Want lazy compute for all compute functions, move over boolean here
How is this change tested?
Are there any user-facing changes?
from array/compute/binary deprecated
We will soon deprecate all functions in this mod