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

Add type matching benchmark #768

Merged
merged 5 commits into from
Jul 25, 2020

Conversation

trask
Copy link
Member

@trask trask commented Jul 23, 2020

I added this to benchmark the change discussed in #646 (comment), and the benchmark seems useful to keep around (and probably improve).

@@ -22,10 +25,16 @@ jmh {
fork = 1 // How many times to forks a single benchmark. Use 0 to disable forking altogether
// jvmArgs += ["-XX:+UnlockDiagnosticVMOptions", "-XX:+DebugNonSafepoints", "-XX:StartFlightRecording=delay=5s,dumponexit=true,name=jmh-benchmark,filename=$rootDir/benchmark/build/reports/jmh/jmh-benchmark.jfr"]
// jvmArgs += ["-agentpath:$rootDir/benchmark/src/jmh/resources/libasyncProfiler.so=start,collapsed,file=$rootDir/benchmark/build/reports/jmh/profiler.txt"]
failOnError = true // Should JMH fail immediately if any benchmark had experienced the unrecoverable error?

// uncomment to use for TypeMatchingBenchmark
Copy link
Contributor

Choose a reason for hiding this comment

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

Is it worth having a separate Gradle project?

Copy link
Contributor

Choose a reason for hiding this comment

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

Or separate Gradle task

Copy link
Member Author

Choose a reason for hiding this comment

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

I just tried this, but the jmh task seems different from normal gradle tasks(?): https://github.com/melix/jmh-gradle-plugin/blob/master/src/main/groovy/me/champeau/gradle/JMHTask.java#L32

and so I run into this problem:

melix/jmh-gradle-plugin#161 (comment)

Copy link
Member Author

Choose a reason for hiding this comment

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

for now, I modeled it similar to existing benchmarks, and I added #782

@@ -22,10 +25,16 @@ jmh {
fork = 1 // How many times to forks a single benchmark. Use 0 to disable forking altogether
// jvmArgs += ["-XX:+UnlockDiagnosticVMOptions", "-XX:+DebugNonSafepoints", "-XX:StartFlightRecording=delay=5s,dumponexit=true,name=jmh-benchmark,filename=$rootDir/benchmark/build/reports/jmh/jmh-benchmark.jfr"]
// jvmArgs += ["-agentpath:$rootDir/benchmark/src/jmh/resources/libasyncProfiler.so=start,collapsed,file=$rootDir/benchmark/build/reports/jmh/profiler.txt"]
failOnError = true // Should JMH fail immediately if any benchmark had experienced the unrecoverable error?

// uncomment to use for TypeMatchingBenchmark
Copy link
Contributor

Choose a reason for hiding this comment

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

Or separate Gradle task

@iNikem
Copy link
Contributor

iNikem commented Jul 24, 2020

@trask do you want to address my comments and will merge?

@trask
Copy link
Member Author

trask commented Jul 24, 2020

Yes, I do want to address your comments, they are good, just haven't got to it yet

@trask trask requested a review from iNikem July 24, 2020 18:49
@iNikem iNikem merged commit 9f3b087 into open-telemetry:master Jul 25, 2020
@trask trask deleted the add-type-matching-benchmark branch August 4, 2020 22:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants