# JMH 1.11.2 (released 74 days ago) # VM version: JDK 1.8.0_66, VM 25.66-b17 # VM invoker: /home/shade/Install/jdk8u66/jre/bin/java # VM options: -XX:+UseParallelGC -Xms1g -Xmx1g # Warmup: 10 iterations, 1 s each # Measurement: 10 iterations, 1 s each # Timeout: 10 min per iteration # Threads: 1 thread, will synchronize iterations # Benchmark mode: Average time, time/op # Benchmark: org.openjdk.EmptyArrayBench.const_008 # Run progress: 0.00% complete, ETA 00:00:20 # Fork: 1 of 1 # Preparing profilers: LinuxPerfAsmProfiler # Profilers consume stdout and stderr from target VM, use -v EXTRA to copy to console # Warmup Iteration 1: 5.616 ns/op # Warmup Iteration 2: 4.844 ns/op # Warmup Iteration 3: 4.661 ns/op # Warmup Iteration 4: 4.687 ns/op # Warmup Iteration 5: 4.677 ns/op # Warmup Iteration 6: 4.650 ns/op # Warmup Iteration 7: 4.631 ns/op # Warmup Iteration 8: 4.666 ns/op # Warmup Iteration 9: 4.628 ns/op # Warmup Iteration 10: 4.646 ns/op Iteration 1: 4.903 ns/op Iteration 2: 4.657 ns/op Iteration 3: 4.675 ns/op Iteration 4: 4.591 ns/op Iteration 5: 4.619 ns/op Iteration 6: 4.618 ns/op Iteration 7: 4.658 ns/op Iteration 8: 4.667 ns/op Iteration 9: 4.666 ns/op Iteration 10: 4.756 ns/op # Processing profiler results: LinuxPerfAsmProfiler Result "const_008": 4.681 ±(99.9%) 0.135 ns/op [Average] (min, avg, max) = (4.591, 4.681, 4.903), stdev = 0.090 CI (99.9%): [4.545, 4.816] (assumes normal distribution) Secondary result "·asm": PrintAssembly processed: 140988 total address lines. Perf output processed (skipped 10.105 seconds): Column 1: cycles (12293 events) Column 2: instructions (12566 events) Hottest code regions (>10.00% "cycles" events): ....[Hottest Region 1].............................................................................. [0x7fe4b0ddb2d4:0x7fe4b0ddb39c] in org.openjdk.generated.EmptyArrayBench_const_008_jmhTest::const_008_avgt_jmhStub ; {optimized virtual_call} 0x00007fe4b0ddb2d4: mov %rbp,%r8 0x00007fe4b0ddb2d7: movzbl 0x94(%r8),%r11d ;*getfield isDone ; - org.openjdk.generated.EmptyArrayBench_const_008_jmhTest::const_008_avgt_jmhStub@29 (line 201) ; implicit exception: dispatches to 0x00007fe4b0ddb421 0x00007fe4b0ddb2df: test %r11d,%r11d 0x00007fe4b0ddb2e2: jne 0x00007fe4b0ddb39e ;*ifeq ; - org.openjdk.generated.EmptyArrayBench_const_008_jmhTest::const_008_avgt_jmhStub@32 (line 201) 0x00007fe4b0ddb2e8: mov $0x1,%ebp ╭ 0x00007fe4b0ddb2ed: jmpq 0x00007fe4b0ddb36c 1.64% 1.92% │↗ 0x00007fe4b0ddb2f2: mov %r10,0x60(%r15) 2.32% 0.96% ││ 0x00007fe4b0ddb2f6: prefetchnta 0xc0(%r10) 3.28% 4.03% ││ 0x00007fe4b0ddb2fe: movq $0x1,(%rax) 3.97% 4.34% ││ 0x00007fe4b0ddb305: prefetchnta 0x100(%r10) 1.36% 2.05% ││ 0x00007fe4b0ddb30d: movl $0x20019035,0x8(%rax) ; {metadata('org/openjdk/EmptyArrayBench$Foo'[])} 1.91% 2.57% ││ 0x00007fe4b0ddb314: prefetchnta 0x140(%r10) 1.84% 2.41% ││ 0x00007fe4b0ddb31c: movl $0x8,0xc(%rax) 2.67% 3.87% ││ 0x00007fe4b0ddb323: prefetchnta 0x180(%r10) 1.52% 1.83% ││ 0x00007fe4b0ddb32b: mov %r12,0x10(%rax) 4.57% 4.86% ││ 0x00007fe4b0ddb32f: mov %r12,0x18(%rax) 4.39% 4.39% ││ 0x00007fe4b0ddb333: mov %r12,0x20(%rax) 5.13% 4.67% ││ 0x00007fe4b0ddb337: mov %r12,0x28(%rax) 1.80% 2.62% ││ 0x00007fe4b0ddb33b: mov %r8,0x18(%rsp) 1.50% 1.27% ││ 0x00007fe4b0ddb340: mov %rax,%rdx ;*invokevirtual const_008 ││ ; - org.openjdk.generated.EmptyArrayBench_const_008_jmhTest::const_008_avgt_jmhStub@16 (line 199) 0.89% 1.21% ││ 0x00007fe4b0ddb343: mov 0x10(%rsp),%rsi 2.13% 2.39% ││ 0x00007fe4b0ddb348: data16 xchg %ax,%ax 1.68% 1.93% ││ 0x00007fe4b0ddb34b: callq 0x00007fe4b0c1f020 ; OopMap{[0]=Oop [8]=Oop [16]=Oop [24]=Oop off=336} ││ ;*invokevirtual consume ││ ; - org.openjdk.generated.EmptyArrayBench_const_008_jmhTest::const_008_avgt_jmhStub@19 (line 199) ││ ; {optimized virtual_call} 2.72% 2.58% ││ 0x00007fe4b0ddb350: mov 0x18(%rsp),%r8 2.07% 2.34% ││ 0x00007fe4b0ddb355: movzbl 0x94(%r8),%r10d ;*getfield isDone ││ ; - org.openjdk.generated.EmptyArrayBench_const_008_jmhTest::const_008_avgt_jmhStub@29 (line 201) 1.71% 1.71% ││ 0x00007fe4b0ddb35d: add $0x1,%rbp ; OopMap{r8=Oop [0]=Oop [8]=Oop [16]=Oop [24]=Oop off=353} ││ ;*ifeq ││ ; - org.openjdk.generated.EmptyArrayBench_const_008_jmhTest::const_008_avgt_jmhStub@32 (line 201) 2.34% 2.55% ││ 0x00007fe4b0ddb361: test %eax,0x15e03c99(%rip) # 0x00007fe4c6bdf000 ││ ; {poll} 1.72% 1.54% ││ 0x00007fe4b0ddb367: test %r10d,%r10d ││ 0x00007fe4b0ddb36a: jne 0x00007fe4b0ddb3a3 ;*aload ││ ; - org.openjdk.generated.EmptyArrayBench_const_008_jmhTest::const_008_avgt_jmhStub@13 (line 199) 1.34% 1.70% ↘│ 0x00007fe4b0ddb36c: mov 0x60(%r15),%rax 0.88% 0.77% │ 0x00007fe4b0ddb370: mov %rax,%r10 3.16% 3.07% │ 0x00007fe4b0ddb373: add $0x30,%r10 2.25% 1.69% │ 0x00007fe4b0ddb377: cmp 0x70(%r15),%r10 0.01% ╰ 0x00007fe4b0ddb37b: jb 0x00007fe4b0ddb2f2 0x00007fe4b0ddb381: mov %r8,0x18(%rsp) 0x00007fe4b0ddb386: movabs $0x1000c81a8,%rsi ; {metadata('org/openjdk/EmptyArrayBench$Foo'[])} 0x00007fe4b0ddb390: mov $0x8,%edx 0x00007fe4b0ddb395: xchg %ax,%ax 0x00007fe4b0ddb397: callq 0x00007fe4b0cd3920 ; OopMap{[0]=Oop [8]=Oop [16]=Oop [24]=Oop off=412} ;*anewarray ; - org.openjdk.EmptyArrayBench::const_008@2 (line 109) ; - org.openjdk.generated.EmptyArrayBench_const_008_jmhTest::const_008_avgt_jmhStub@16 (line 199) ; {runtime_call} 0x00007fe4b0ddb39c: jmp 0x00007fe4b0ddb340 .................................................................................................... 60.80% 65.27% ....[Hottest Region 2].............................................................................. [0x7fe4b0dd0860:0x7fe4b0dd08e5] in org.openjdk.jmh.infra.Blackhole::consume # parm0: rdx:rdx = '[Ljava/lang/Object;' # [sp+0x20] (sp of caller) 0x00007fe4b0dd0860: mov 0x8(%rsi),%r10d 0x00007fe4b0dd0864: shl $0x3,%r10 0x00007fe4b0dd0868: cmp %r10,%rax 0x00007fe4b0dd086b: jne 0x00007fe4b0c1ee20 ; {runtime_call} 0x00007fe4b0dd0871: data16 xchg %ax,%ax 0x00007fe4b0dd0874: nopl 0x0(%rax,%rax,1) 0x00007fe4b0dd087c: data16 data16 xchg %ax,%ax [Verified Entry Point] 3.56% 2.65% 0x00007fe4b0dd0880: sub $0x18,%rsp 4.51% 3.76% 0x00007fe4b0dd0887: mov %rbp,0x10(%rsp) ;*synchronization entry ; - org.openjdk.jmh.infra.Blackhole::consume@-1 (line 331) 3.03% 1.49% 0x00007fe4b0dd088c: mov 0xc4(%rsi),%r11d ;*getfield tlrMask ; - org.openjdk.jmh.infra.Blackhole::consume@1 (line 331) 2.46% 2.30% 0x00007fe4b0dd0893: imul $0x19660d,0xc0(%rsi),%r10d 3.06% 2.81% 0x00007fe4b0dd089e: add $0x3c6ef35f,%r10d ;*iadd ; - org.openjdk.jmh.infra.Blackhole::consume@15 (line 332) 2.19% 2.47% 0x00007fe4b0dd08a5: mov %r10d,0xc0(%rsi) ;*putfield tlr ; - org.openjdk.jmh.infra.Blackhole::consume@17 (line 332) 2.79% 2.77% 0x00007fe4b0dd08ac: and %r11d,%r10d 0.63% 0.81% 0x00007fe4b0dd08af: test %r10d,%r10d 0.02% ╭ 0x00007fe4b0dd08b2: je 0x00007fe4b0dd08c0 ;*return │ ; - org.openjdk.jmh.infra.Blackhole::consume@41 (line 338) 2.48% 2.59% │ 0x00007fe4b0dd08b4: add $0x10,%rsp 1.03% 1.23% │ 0x00007fe4b0dd08b8: pop %rbp 1.29% 1.34% │ 0x00007fe4b0dd08b9: test %eax,0x15e0e741(%rip) # 0x00007fe4c6bdf000 │ ; {poll_return} 2.65% 1.38% │ 0x00007fe4b0dd08bf: retq ↘ 0x00007fe4b0dd08c0: shl %r11d 0x00007fe4b0dd08c3: mov %rsi,%r10 0x00007fe4b0dd08c6: inc %r11d 0x00007fe4b0dd08c9: shr $0x9,%r10 0x00007fe4b0dd08cd: mov %rdx,%r8 0x00007fe4b0dd08d0: mov %r8d,0xd8(%rsi) 0x00007fe4b0dd08d7: movabs $0x7fe4afc0e000,%r8 0x00007fe4b0dd08e1: mov %r12b,(%r8,%r10,1) 0x00007fe4b0dd08e5: mov %r11d,0xc4(%rsi) .................................................................................................... 29.71% 25.59% ....[Hottest Regions]............................................................................... 60.80% 65.27% [0x7fe4b0ddb2d4:0x7fe4b0ddb39c] in org.openjdk.generated.EmptyArrayBench_const_008_jmhTest::const_008_avgt_jmhStub 29.71% 25.59% [0x7fe4b0dd0860:0x7fe4b0dd08e5] in org.openjdk.jmh.infra.Blackhole::consume 3.44% 2.59% [0x7fe4c57dff60:0x7fe4c57dff69] in SpinPause (libjvm.so) 1.44% 1.38% [0xffffffff8105b83a:0xffffffff8105b83d] in [unknown] ([unknown]) 1.42% 2.79% [0x7fe4c5a1d6b9:0x7fe4c5a1d718] in _ZN22ParallelTaskTerminator17offer_terminationEP20TerminatorTerminator (libjvm.so) 0.28% 0.21% [0x7fe4c5a0daa0:0x7fe4c5a0dae9] in _ZN11StringTable17unlink_or_oops_doEP17BoolObjectClosureP10OopClosurePiS4_ (libjvm.so) 0.11% 0.01% [0x7fe4c5970616:0x7fe4c5970616] in _ZN22PSScavengeKlassClosure8do_klassEP5Klass (libjvm.so) 0.07% 0.16% [0x7fe4c5a0db27:0x7fe4c5a0db36] in _ZN11StringTable17unlink_or_oops_doEP17BoolObjectClosureP10OopClosurePiS4_ (libjvm.so) 0.06% 0.02% [0xffffffff817b3c20:0xffffffff817b3c20] in [unknown] ([unknown]) 0.05% 0.02% [0xffffffff810d3027:0xffffffff810d305c] in [unknown] ([unknown]) 0.05% 0.05% [0xffffffff81165460:0xffffffff81165461] in [unknown] ([unknown]) 0.05% 0.06% [0x7fe4c5986d6f:0x7fe4c5986db9] in _ZN13RelocIterator10initializeEP7nmethodPhS2_ (libjvm.so) 0.03% [0xffffffff810aa242:0xffffffff810aa277] in [unknown] ([unknown]) 0.03% 0.02% [0xffffffff817b5a9e:0xffffffff817b5a9e] in [unknown] ([unknown]) 0.03% [0x7fe4c546a2d0:0x7fe4c546a2d6] in _ZN13CollectedHeap23allocate_from_tlab_slowE11KlassHandleP6Threadm (libjvm.so) 0.03% 0.06% [0x7fe4c5911430:0x7fe4c591143e] in _ZN10fileStream5writeEPKcm (libjvm.so) 0.03% 0.02% [0x7fe4c596fc20:0x7fe4c596fc3e] in _ZN14PSRootsClosureILb0EE6do_oopEPP7oopDesc (libjvm.so) 0.02% 0.02% [0xffffffff81032b0c:0xffffffff81032b0c] in [unknown] ([unknown]) 0.02% [0xffffffff810a0ad2:0xffffffff810a0ad2] in [unknown] ([unknown]) 0.02% [0xffffffff817b3d99:0xffffffff817b3d99] in [unknown] ([unknown]) 2.29% 1.73% <...other 372 warm regions...> .................................................................................................... 100.00% 99.99% ....[Hottest Methods (after inlining)].............................................................. 60.80% 65.27% org.openjdk.generated.EmptyArrayBench_const_008_jmhTest::const_008_avgt_jmhStub 29.71% 25.59% org.openjdk.jmh.infra.Blackhole::consume 3.44% 2.59% SpinPause (libjvm.so) 2.78% 2.29% [unknown] ([unknown]) 1.43% 2.79% _ZN22ParallelTaskTerminator17offer_terminationEP20TerminatorTerminator (libjvm.so) 0.34% 0.37% _ZN11StringTable17unlink_or_oops_doEP17BoolObjectClosureP10OopClosurePiS4_ (libjvm.so) 0.11% 0.01% _ZN22PSScavengeKlassClosure8do_klassEP5Klass (libjvm.so) 0.05% 0.06% _ZN13RelocIterator10initializeEP7nmethodPhS2_ (libjvm.so) 0.05% _ZN13CollectedHeap23allocate_from_tlab_slowE11KlassHandleP6Threadm (libjvm.so) 0.04% 0.04% vfprintf (libc-2.19.so) 0.03% 0.06% _ZN10fileStream5writeEPKcm (libjvm.so) 0.03% _ZN12ConstantPool21impl_signature_ref_atEib (libjvm.so) 0.03% 0.02% _ZN14PSRootsClosureILb0EE6do_oopEPP7oopDesc (libjvm.so) 0.03% 0.02% print_insn (libhsdis-amd64.so) 0.02% _ZN11OptoRuntime11new_array_CEP5KlassiP10JavaThread (libjvm.so) 0.02% pthread_cond_wait@@GLIBC_2.3.2 (libpthread-2.19.so) 0.02% _ZN20ParallelScavengeHeap17allocate_new_tlabEm; _ZNK20ParallelScavengeHeap21unsafe_max_tlab_allocEP6Thread (libjvm.so) 0.02% 0.02% _ZN12outputStream12do_vsnprintfEPcmPKcP13__va_list_tagbRm (libjvm.so) 0.02% 0.02% _ZN5frame19oops_interpreted_doEP10OopClosureP10CLDClosurePK11RegisterMapb (libjvm.so) 0.02% __lll_unlock_wake (libpthread-2.19.so) 0.97% 0.45% <...other 98 warm methods...> .................................................................................................... 100.00% 99.60% ....[Distribution by Area].......................................................................... 90.54% 90.87% 6.31% 6.53% 2.78% 2.29% 0.15% 0.24% 0.14% 0.03% 0.07% 0.03% 0.02% .................................................................................................... 100.00% 99.99% # Run complete. Total time: 00:00:22 Benchmark Mode Cnt Score Error Units EmptyArrayBench.const_008 avgt 10 4.681 ± 0.135 ns/op EmptyArrayBench.const_008:·asm avgt NaN ---