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

Storage: add RSOperator batch check #6293

Closed

Conversation

Lloyd-Pottiger
Copy link
Contributor

@Lloyd-Pottiger Lloyd-Pottiger commented Nov 10, 2022

Signed-off-by: Lloyd-Pottiger [email protected]

What problem does this PR solve?

Issue Number: ref #6295

Problem Summary:

What is changed and how it works?

add RSOperator batch check

  • avoid getting rsindex continuously
  • batch compute handle_res

TODO:

  • To further improve performance, we will let RSRusult be a bool.

Check List

Tests

  • Unit test
  • Integration test
  • Manual test (add detailed scripts or steps below)
  • No code

Side effects

  • Performance regression: Consumes more CPU
  • Performance regression: Consumes more Memory
  • Breaking backward compatibility

Documentation

  • Affects user behaviors
  • Contains syntax changes
  • Contains variable changes
  • Contains experimental features
  • Changes MySQL compatibility

Release note

None

Signed-off-by: Lloyd-Pottiger <[email protected]>
@ti-chi-bot
Copy link
Member

[REVIEW NOTIFICATION]

This pull request has not been approved.

To complete the pull request process, please ask the reviewers in the list to review by filling /cc @reviewer in the comment.
After your PR has acquired the required number of LGTMs, you can assign this pull request to the committer in the list by filling /assign @committer in the comment to help you merge this pull request.

The full list of commands accepted by this bot can be found here.

Reviewer can indicate their review by submitting an approval review.
Reviewer can cancel approval by submitting a request changes review.

@ti-chi-bot ti-chi-bot added release-note-none Denotes a PR that doesn't merit a release note. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. labels Nov 10, 2022
Signed-off-by: Lloyd-Pottiger <[email protected]>
Signed-off-by: Lloyd-Pottiger <[email protected]>
@Lloyd-Pottiger
Copy link
Contributor Author

/run-all-tests

@Lloyd-Pottiger
Copy link
Contributor Author

/cc @hehechen @hongyunyan @JaySon-Huang

@hongyunyan
Copy link
Contributor

Could you please give a microbenchmark result to show the performance gain by batch check?

@hongyunyan
Copy link
Contributor

I think maybe L194 in dbms/src/Storages/DeltaMerge/File/DMFilePackFilter.h can also use batch check to make optimzation?

@Lloyd-Pottiger
Copy link
Contributor Author

Could you please give a microbenchmark result to show the performance gain by batch check?

minor changes, so no benchmark. And it is necessary to generate a large number of packs in order to see the implementation, so...

I think maybe L194 in dbms/src/Storages/DeltaMerge/File/DMFilePackFilter.h can also use batch check to make optimization?

yes, I missed it, I will do that.

@Lloyd-Pottiger Lloyd-Pottiger marked this pull request as draft February 23, 2023 04:55
@ti-chi-bot ti-chi-bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Feb 23, 2023
@ti-chi-bot
Copy link
Contributor

ti-chi-bot bot commented Jul 17, 2023

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please ask for approval from lloyd-pottiger. For more information see the Kubernetes Code Review Process.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@Lloyd-Pottiger Lloyd-Pottiger deleted the add-rsoperator-batch-check branch July 17, 2023 07:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. release-note-none Denotes a PR that doesn't merit a release note. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants