> On Dec. 10, 2014, 1:09 a.m., Kevin Sweeney wrote:
> > src/jmh/java/org/apache/aurora/benchmark/SchedulerBenchmark.java, lines 
> > 29-32
> > <https://reviews.apache.org/r/28710/diff/4/?file=784251#file784251line29>
> >
> >     What does the main get us here? Isn't the gradle plugin wiring this up?

Good point. I used it to run benchmarks from command line but given the command 
line execution is rather tedious with all jmh flags passed into it, it's 
cleaner to support only one way via gradle. Dropped.


- Maxim


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/28710/#review64487
-----------------------------------------------------------


On Dec. 6, 2014, 12:33 a.m., Maxim Khutornenko wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/28710/
> -----------------------------------------------------------
> 
> (Updated Dec. 6, 2014, 12:33 a.m.)
> 
> 
> Review request for Aurora, Kevin Sweeney and Bill Farner.
> 
> 
> Repository: aurora
> 
> 
> Description
> -------
> 
> This RB is superseding the https://reviews.apache.org/r/28474/.
> 
> 
> I have spent some time researching the available microbenchmark frameworks 
> and JMH [1] came as a clear winner:
> - Active development trail [2]
> - Advanced featureset and built-in optimizations improving accuracy and 
> consistency [3]
> - Well documented set of examples [4]
> - Large community experience and collective wisdom. 
> 
> 
> This RB adds gradle support for running JMH benchmarks and is relying on JMH 
> gradle plugin [5]. The benchmarks are run via `./gradlew jmh` command.
> 
> [1] - http://openjdk.java.net/projects/code-tools/jmh/
> [2] - http://hg.openjdk.java.net/code-tools/jmh/ 
> [3] - 
> https://groups.google.com/forum/#!msg/mechanical-sympathy/m4opvy4xq3U/7lY8x8SvHgwJ
> [4] - 
> http://hg.openjdk.java.net/code-tools/jmh/file/adb6047266d8/jmh-samples/src/main/java/org/openjdk/jmh/samples
> [5] - https://github.com/melix/jmh-gradle-plugin
> 
> 
> Diffs
> -----
> 
>   build.gradle 152ba631e2dd07f0306e58e355274e10a4128140 
>   config/findbugs/excludeFilter.xml d6c1b1681c2d8505a088f9fb082ce11ac400126f 
>   src/jmh/java/org/apache/aurora/benchmark/SchedulerBenchmark.java 
> PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/28710/diff/
> 
> 
> Testing
> -------
> 
> $ ./gradlew jmh
> 
> Sample results generated:
> 
> ```
> # VM invoker: 
> /Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home/jre/bin/java
> # VM options: -Dfile.encoding=UTF-8 -Duser.country=US -Duser.language=en 
> -Duser.variant
> # Warmup: 1 iterations, 1 s each
> # Measurement: 3 iterations, 1 s each
> # Timeout: 10 min per iteration
> # Threads: 1 thread, will synchronize iterations
> # Benchmark mode: Throughput, ops/time
> # Benchmark: org.apache.aurora.benchmark.SchedulerBenchmark.example
> 
> # Run progress: 0.00% complete, ETA 00:00:04
> # Fork: 1 of 1
> # Warmup Iteration   1: 3156839103.911 ops/s
> Iteration   1: 3333544897.411 ops/s
> Iteration   2: 3357230627.218 ops/s
> Iteration   3: 3461073727.560 ops/s
> 
> 
> Result: 3383949750.729 ±(99.9%) 1237528915.517 ops/s [Average]
>   Statistics: (min, avg, max) = (3333544897.411, 3383949750.729, 
> 3461073727.560), stdev = 67833135.714
>   Confidence interval (99.9%): [2146420835.212, 4621478666.247]
> 
> 
> # Run complete. Total time: 00:00:05
> 
> Benchmark                              Mode  Samples           Score          
>   Error  Units
> o.a.a.b.SchedulerBenchmark.example    thrpt        3  3383949750.729 ± 
> 1237528915.517  ops/s
> 
> ```
> 
> 
> Thanks,
> 
> Maxim Khutornenko
> 
>

Reply via email to