-
Notifications
You must be signed in to change notification settings - Fork 98
perf[alp]: compare |- alp pushdown #5443
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
base: develop
Are you sure you want to change the base?
Conversation
Signed-off-by: Joe Isaacs <[email protected]>
CodSpeed Performance ReportMerging #5443 will degrade performances by 38.86%Comparing Summary
Benchmarks breakdownFootnotes
|
Codecov Report❌ Patch coverage is
☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Signed-off-by: Joe Isaacs <[email protected]>
Signed-off-by: Joe Isaacs <[email protected]>
Signed-off-by: Joe Isaacs <[email protected]>
gatesn
left a comment
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 is... kinda nice??
I guess there's a lot more stuff to pull apart than just the eager compute function.
I wonder if after writing a few more of these there are certain patterns we have to extract sub-expressions out of an ExprArray and push them through another array?
vortex-file/src/lib.rs
Outdated
| EncodingRef::new_ref(vortex_zstd::ZstdEncoding.as_ref()), | ||
| ]); | ||
|
|
||
| register_alp_rules(&session.arrays()) |
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 think we should just have vortex_alp::initialize(session)
So there's a single entry-point for the crate to register all its things (including its encodings!)
| mod nan_count; | ||
| mod take; | ||
|
|
||
| pub use expr_pushdown::ALPExprPushdownRule; |
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.
Why pub?
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.
vortex_alp::initialize(session)
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.
pub(crate) at most ?
| mod array; | ||
| mod compress; | ||
| mod compute; | ||
| pub mod compute; |
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.
Why pub?
| } | ||
|
|
||
| // Convert to compute operator | ||
| let compute_op = match operator { |
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.
Feels like this does the same logic as the matches! macro on line 62?
| let literal_value = literal_expr.as_::<Literal>().data().clone(); | ||
|
|
||
| // Don't optimize nullable comparisons | ||
| if literal_value.dtype().is_nullable() { |
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'm 90% sure this is covered by the null checks above
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.
me too but also only 90
Deploying vortex-bench with
|
| Latest commit: |
81eaec2
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://bfb9335d.vortex-93b.pages.dev |
| Branch Preview URL: | https://ji-alp-pushddown.vortex-93b.pages.dev |
|
Yep, I agree I just wanted to see what it would be like. |
|
The other approach for scalar arrays. is to convert this into an expression and create a reduce_parent expr rule for |
Pull request was converted to draft
Signed-off-by: Joe Isaacs <[email protected]>
e103f21 to
f6f04e7
Compare
Signed-off-by: Joe Isaacs <[email protected]>
No description provided.