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

Review automated benchmarks for Bytes contentEquals #608

Closed
tgd opened this issue Mar 8, 2024 · 3 comments
Closed

Review automated benchmarks for Bytes contentEquals #608

tgd opened this issue Mar 8, 2024 · 3 comments
Assignees

Comments

@tgd
Copy link
Contributor

tgd commented Mar 8, 2024

Background

We have some good benchmarks for assessing Bytes#contentEquals performance. Not all of these are run for every performance build. Ensure that they are all run, taking care to ensure they run across a good number of JVM versions including those where vectorizedMismatch is available - JDK11+.

image

@tgd tgd added the performance label Mar 8, 2024
@tgd tgd added the review label Jun 3, 2024
@yevgenp
Copy link
Contributor

yevgenp commented Jun 7, 2024

ALL of the above mentioned ContentEqual benchmarks are being run by both Performance and PerformanceJava17 jobs.
What's the background or scope left here @tgd ?

@tgd
Copy link
Contributor Author

tgd commented Jun 7, 2024

Thanks @yevgenp - background is to make sure that we have a benchmark that is really invoking vectorizedMismatch also.

The intention is to have good evidence to show that contentEquals with vectorizedMismatch outperforms alternatives.

final Method vectorizedMismatch = Jvm.getMethod(arraysSupportClass, "vectorizedMismatch",

In order to do this we will need one flavour of the benchmark running on Java 9+. Can you check if this is feasible/trivial?

@yevgenp
Copy link
Contributor

yevgenp commented Jun 7, 2024

Added debug statements to prove that vectorizedMismatch access is enabled. See test run.

@yevgenp yevgenp closed this as completed Jun 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants