Skip to content

TagRenamingFilter #6187

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

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open

Conversation

etki
Copy link

@etki etki commented Apr 27, 2025

This is the last of performance-related PRs. As with previous one, this description will be updated once i have more time to run all the benchmarks. Nothing super super cool, done mostly to keep consistency, but these are the latest results (requires additional verification). Please keep in mind that X is not X supplied tags in every input, but only in 90% of them (other 10% contain 1-64 tags, done to simulate a somewhat real situation).

processed tags version nanoseconds / operation instructions
0 main 91.356 ± 0.353 374.790
0 pr 81.980 ± 0.859 335.794
1 main 126.592 ± 0.345 473.020
1 pr 92.874 ± 0.277 350.152
4 main 146.673 ± 0.369 568.136
4 pr 106.541 ± 0.284 409.278
8 main 185.319 ± 0.457 725.593
8 pr 127.259 ± 0.235 500.279
16 main 274.408 ± 0.560 1162.592
16 pr 191.191 ± 0.331 800.652
32 main 503.440 ± 0.745 2126.366
32 pr 395.133 ± 0.781 1817.026
64 main 821.375 ± 1.231 4549.852
64 pr 865.062 ± 1.071 5404.027

The results are getting worse in 32+ range (compared to the single-iteration version as well), because the chance of actually seeing a replacement gets to 50% and higher. This, i believe, is where we are actually leaving the real situation. The double-iteration version is in fact the last minute experiment, there might be a bit of an improvement, will hopefully have some time to investigate. As in all other PRs, #6113 would greatly help to make another CPU relief step.

@jonatan-ivanov
Copy link
Member

Hi,

Instead of replying to all of your PRs separately, let me reply here to all of them first.
First of all: thank you very much!

I looked through them quickly, here are a few updates/things to consider:

  • We need to discuss them internally (they are somewhat connected)
  • Timeline-wise we can consider them for 1.16.0 (which means the earliest we can merge them is mid next month)
  • I know @shakuzen wanted to create JMH benchmarks that are connected to these areas, I think we should do that first
  • Last week I worked on making it easier to run perf tests in a more stable infrastructure than our laptops, I need to discuss this with @shakuzen, it can help merging your PRs if we can use it to run stable JMH benchmarks

We will get back to you soon with more update after we discussed the above/reviewed your PRs.

@jonatan-ivanov jonatan-ivanov added the performance Issues related to general performance label Apr 28, 2025
@etki
Copy link
Author

etki commented Apr 29, 2025

We need to discuss them internally (they are somewhat connected)

Absolutely no problem. I'm just having fun here, feel free to reject what you don't see as fitting. I've separate all of them so that can be done easily without hassle. This also gives me some time to get back and properly describe everything that is done here.

I know @shakuzen wanted to create JMH benchmarks that are connected to these areas, I think we should do that first

I have some in #6174 - if there was no work done previously, then you might want to take a look at them. They use existing API, so it should be possible to throw it at any recent commit.

I need to discuss this with @shakuzen, it can help merging your PRs if we can use it to run stable JMH benchmarks

I also hope that i'll get my homelab to a better place soon, i have more than one minibox with different CPUs. Just to reiterate, all of these were done on a pristine Fedora (i.e. no additional services running) and intel N100 with fixed frequency, they were quite stable with <1% fluctuation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
performance Issues related to general performance
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants