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

Speed up BinaryOperatorTransformFunction evaluation to use PredicateEvaluator #14619

Conversation

xiangfu0
Copy link
Contributor

@xiangfu0 xiangfu0 commented Dec 6, 2024

For BinaryOperatorTransformFunction, we don't need to read the values then compare but use dictionary.

Further optimization could be using predicate evaluator.

@xiangfu0 xiangfu0 requested a review from Jackie-Jiang December 6, 2024 23:12
@xiangfu0 xiangfu0 force-pushed the BinaryOperatorTransformFunction-optimization branch from 377045c to eaf6a9d Compare December 6, 2024 23:15
@codecov-commenter
Copy link

codecov-commenter commented Dec 6, 2024

Codecov Report

Attention: Patch coverage is 52.70270% with 105 lines in your changes missing coverage. Please review.

Project coverage is 63.68%. Comparing base (59551e4) to head (e4c33b9).
Report is 1683 commits behind head on master.

Files with missing lines Patch % Lines
...form/function/BinaryOperatorTransformFunction.java 52.48% 86 Missing and 19 partials ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##             master   #14619      +/-   ##
============================================
+ Coverage     61.75%   63.68%   +1.93%     
- Complexity      207     1482    +1275     
============================================
  Files          2436     2716     +280     
  Lines        133233   152471   +19238     
  Branches      20636    23591    +2955     
============================================
+ Hits          82274    97097   +14823     
- Misses        44911    48045    +3134     
- Partials       6048     7329    +1281     
Flag Coverage Δ
custom-integration1 100.00% <ø> (+99.99%) ⬆️
integration 100.00% <ø> (+99.99%) ⬆️
integration1 100.00% <ø> (+99.99%) ⬆️
integration2 0.00% <ø> (ø)
java-11 63.59% <51.80%> (+1.88%) ⬆️
java-21 63.57% <51.35%> (+1.95%) ⬆️
skip-bytebuffers-false 63.61% <52.70%> (+1.86%) ⬆️
skip-bytebuffers-true 63.53% <51.35%> (+35.80%) ⬆️
temurin 63.68% <52.70%> (+1.93%) ⬆️
unittests 63.67% <52.70%> (+1.93%) ⬆️
unittests1 56.15% <52.70%> (+9.26%) ⬆️
unittests2 34.02% <0.00%> (+6.29%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@xiangfu0 xiangfu0 force-pushed the BinaryOperatorTransformFunction-optimization branch 4 times, most recently from 9778fbb to 5164df3 Compare December 11, 2024 19:27
Copy link
Contributor

@Jackie-Jiang Jackie-Jiang left a comment

Choose a reason for hiding this comment

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

Is there a way to verify if this optimization is applied?

@xiangfu0 xiangfu0 force-pushed the BinaryOperatorTransformFunction-optimization branch 3 times, most recently from fc21c88 to ff991bf Compare December 13, 2024 00:58
@xiangfu0 xiangfu0 force-pushed the BinaryOperatorTransformFunction-optimization branch 4 times, most recently from 9e0a4d7 to c2c2707 Compare December 14, 2024 01:47
@xiangfu0 xiangfu0 changed the title use dictionary for BinaryOperatorTransformFunction when possible Speed up BinaryOperatorTransformFunction evaluation to use PredicateEvaluator Dec 14, 2024
@xiangfu0 xiangfu0 force-pushed the BinaryOperatorTransformFunction-optimization branch from c2c2707 to f11f540 Compare January 4, 2025 17:25
@xiangfu0 xiangfu0 force-pushed the BinaryOperatorTransformFunction-optimization branch 2 times, most recently from 105728e to cc9534a Compare January 23, 2025 00:58
@xiangfu0
Copy link
Contributor Author

xiangfu0 commented Feb 6, 2025

Is there a way to verify if this optimization is applied?

It's already tested by BinaryOperatorTransformFunctionTest

@xiangfu0 xiangfu0 force-pushed the BinaryOperatorTransformFunction-optimization branch from cc9534a to 5907925 Compare February 6, 2025 00:57
@Jackie-Jiang Jackie-Jiang force-pushed the BinaryOperatorTransformFunction-optimization branch from 5850d63 to 969935e Compare February 7, 2025 03:40
@Jackie-Jiang Jackie-Jiang force-pushed the BinaryOperatorTransformFunction-optimization branch from 969935e to 4e79a0a Compare February 7, 2025 06:23
@Jackie-Jiang Jackie-Jiang force-pushed the BinaryOperatorTransformFunction-optimization branch from 4e79a0a to e4c33b9 Compare February 7, 2025 08:03
@Jackie-Jiang Jackie-Jiang merged commit 64dc922 into apache:master Feb 11, 2025
21 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants