RFR: 8312420: Integrate Graal's blender micro benchmark
Xin Liu
xliu at openjdk.org
Mon Aug 7 18:40:48 UTC 2023
On Fri, 21 Jul 2023 07:44:18 GMT, Joshua Cao <duke at openjdk.org> wrote:
>> We would like to integrate Graal's blender micro benchmark from https://www.graalvm.org/22.1/examples/java-performance-examples/. We have been using this benchmark to test our partial escape analysis work (https://mail.openjdk.org/pipermail/hotspot-compiler-dev/2023-July/066670.html). This test can exist independently of the project.
>>
>>
>> example command to run test:
>>
>>
>> make run-test TEST=micro:org.openjdk.bench.vm.compiler.pea.Blender MICRO="FORK=1;OPTIONS=-prof gc -gc true"
>>
>>
>> example output (not complete):
>>
>>
>> Benchmark (iteration) Mode Cnt Score Error Units [29/1913]
>> Blender.initialize 1 avgt 227997775.000 ns/op
>> Blender.initialize:·gc.alloc.rate 1 avgt 167.192 MB/sec
>> Blender.initialize:·gc.alloc.rate.norm 1 avgt 40000081.600 B/op
>> Blender.initialize:·gc.count 1 avgt 4.000 counts
>> Blender.initialize:·gc.time 1 avgt 65.000 ms
>> Blender.initialize 2 avgt 226255767.800 ns/op
>> Blender.initialize:·gc.alloc.rate 2 avgt 168.466 MB/sec
>> Blender.initialize:·gc.alloc.rate.norm 2 avgt 40000081.600 B/op
>> Blender.initialize:·gc.count 2 avgt 4.000 counts
>> Blender.initialize:·gc.time 2 avgt 58.000 ms
>> Blender.initialize 3 avgt 225596324.600 ns/op
>> Blender.initialize:·gc.alloc.rate 3 avgt 168.960 MB/sec
>> Blender.initialize:·gc.alloc.rate.norm 3 avgt 40000081.600 B/op
>> Blender.initialize:·gc.count 3 avgt 4.000 counts
>> Blender.initialize:·gc.time 3 avgt 55.000 ms
>> Blender.initialize 4 avgt 224856811.000 ns/op
>> Blender.initialize:·gc.alloc.rate 4 avgt 169.520 MB/sec
>> Blender.initialize:·gc.alloc.rate.norm 4 avgt 40000081.600 B/op
>> Blender.initialize:·gc.count 4 avgt ...
>
> Can we still merge this into OpenJDK? For example, I can close this PR, leave the JBS issue open, and let someone at Oracle author the patch. Would folks at Oracle want to integrate this benchmark into OpenJDK?
hi, @caojoshua,
I don't understand the purpose of parameter 'iteration'. Are you trying to differentiate the possibility of the predicate `(color.r + color.g + color.b) % 42 == 0`?
All 11 candidate values are all less than 20, so `iteration / 20` is always 0, right? Do we expect to see anything difference in `Blender.initialize:·gc.alloc.rate.norm` if we run it with GraalVM?
-------------
PR Comment: https://git.openjdk.org/jdk/pull/14941#issuecomment-1668400563
More information about the hotspot-compiler-dev
mailing list