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

Improve like kernel by ~2% #5390

Merged
merged 4 commits into from
Feb 13, 2024
Merged

Improve like kernel by ~2% #5390

merged 4 commits into from
Feb 13, 2024

Conversation

psvri
Copy link
Contributor

@psvri psvri commented Feb 12, 2024

Which issue does this PR close?

Closes #.

Rationale for this change

While experimenting with improving like kernel, I found that we can check for like pattern characters much more efficiently using memchr2.

What changes are included in this PR?

Reworks like kernel logic. Perf numbers in my system is as below

regexp                  time:   [14.796 ms 14.914 ms 15.039 ms]
                        change: [-3.3875% -2.2208% -1.0196%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 18 outliers among 100 measurements (18.00%)
  15 (15.00%) high mild
  3 (3.00%) high severe

regexp scalar           time:   [9.8261 ms 9.9221 ms 10.018 ms]
                        change: [-1.6210% -0.3701% +0.8929%] (p = 0.57 > 0.05)
                        No change in performance detected.

Are there any user-facing changes?

No

@github-actions github-actions bot added the arrow Changes to the arrow crate label Feb 12, 2024
Copy link
Contributor

@tustvold tustvold left a comment

Choose a reason for hiding this comment

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

Seems reasonable to me

arrow-string/src/predicate.rs Outdated Show resolved Hide resolved
@tustvold tustvold merged commit 0d96f1e into apache:master Feb 13, 2024
18 checks passed
@psvri psvri deleted the regex_speedup_1 branch February 14, 2024 15:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
arrow Changes to the arrow crate
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants