# VM invoker: /home/shade/Install/jdk8u40/jre/bin/java # VM options: # Warmup: 5 iterations, 1 s each # Measurement: 5 iterations, 1 s each # Timeout: 10 min per iteration # Threads: 1 thread, will synchronize iterations # Benchmark mode: Average time, time/op # Benchmark: org.sample.singletons.FinalWrapper.first_safe # Run progress: 0.00% complete, ETA 00:02:20 # Fork: 1 of 1 # Preparing profilers: perfasm # Profilers consume stdout and stderr from target VM, use -v EXTRA to copy to console # Warmup Iteration 1: 7.287 ns/op # Warmup Iteration 2: 4.449 ns/op # Warmup Iteration 3: 4.189 ns/op # Warmup Iteration 4: 4.136 ns/op # Warmup Iteration 5: 4.133 ns/op Iteration 1: 4.188 ns/op Iteration 2: 4.152 ns/op Iteration 3: 4.157 ns/op Iteration 4: 4.166 ns/op Iteration 5: 4.171 ns/op # Processing profiler results: perfasm Result: 4.167 ±(99.9%) 0.054 ns/op [Average] Statistics: (min, avg, max) = (4.152, 4.167, 4.188), stdev = 0.014 Confidence interval (99.9%): [4.113, 4.220] PrintAssembly processed: 81428 total address lines. Perf output processed (skipped 6.000 seconds): Column 1: cycles (6683 events) Column 2: instructions (6685 events) Hottest code regions (>10.00% "cycles" events): ....[Hottest Region 1].............................................................................. [0x7fb2e11c2ee0:0x7fb2e11c2fc5] in org.sample.singletons.generated.FinalWrapper_first_safe::first_safe_avgt_jmhStub 0x00007fb2e11c2ec1: mov %rax,0x28(%rbx) ;*putfield stopTime ; - org.sample.singletons.generated.FinalWrapper_first_safe::first_safe_avgt_jmhStub@39 (line 185) 0x00007fb2e11c2ec5: mov %r12,0x18(%rbx) ;*putfield realTime ; - org.sample.singletons.generated.FinalWrapper_first_safe::first_safe_avgt_jmhStub@45 (line 186) 0x00007fb2e11c2ec9: add $0x60,%rsp 0x00007fb2e11c2ecd: pop %rbp 0x00007fb2e11c2ece: test %eax,0x16c3712c(%rip) # 0x00007fb2f7dfa000 ; {poll_return} 0x00007fb2e11c2ed4: retq 0x00007fb2e11c2ed5: nopw 0x0(%rax,%rax,1) 1.32% 1.91% 0x00007fb2e11c2ee0: mov %r10,0x60(%r15) 3.11% 3.98% 0x00007fb2e11c2ee4: prefetchnta 0xc0(%r10) 9.43% 10.55% 0x00007fb2e11c2eec: mov 0xa8(%rdi),%r10 0.45% 0.33% 0x00007fb2e11c2ef3: mov %r10,(%rax) 13.32% 8.38% 0x00007fb2e11c2ef6: movl $0xf801017b,0x8(%rax) ; {metadata('org/sample/singletons/SingletonSafe')} 8.18% 4.92% 0x00007fb2e11c2efd: mov %r12d,0xc(%rax) ;*new ; - org.sample.singletons.FinalWrapper$$Lambda$1/710857960::get@0 ; - org.sample.singletons.FinalWrapper$FinalWrapperFactory::getInstance@27 (line 86) ; - org.sample.singletons.FinalWrapper::first_safe@12 (line 74) ; - org.sample.singletons.generated.FinalWrapper_first_safe::first_safe_avgt_jmhStub@16 (line 182) 3.64% 1.77% 0x00007fb2e11c2f01: mov $0x719434058,%r10 ; {oop(a 'java/lang/Byte'[256] )} 0x00007fb2e11c2f0b: mov 0x2b8(%r10),%r10d ;*aaload ; - java.lang.Byte::valueOf@8 (line 103) ; - org.sample.singletons.SingletonSafe::<init>@7 (line 30) ; - org.sample.singletons.FinalWrapper$$Lambda$1/710857960::get@4 ; - org.sample.singletons.FinalWrapper$FinalWrapperFactory::getInstance@27 (line 86) ; - org.sample.singletons.FinalWrapper::first_safe@12 (line 74) ; - org.sample.singletons.generated.FinalWrapper_first_safe::first_safe_avgt_jmhStub@16 (line 182) 0.76% 0.28% 0x00007fb2e11c2f12: mov %r10d,0xc(%rax) ;*putfield x ; - org.sample.singletons.SingletonSafe::<init>@10 (line 30) ; - org.sample.singletons.FinalWrapper$$Lambda$1/710857960::get@4 ; - org.sample.singletons.FinalWrapper$FinalWrapperFactory::getInstance@27 (line 86) ; - org.sample.singletons.FinalWrapper::first_safe@12 (line 74) ; - org.sample.singletons.generated.FinalWrapper_first_safe::first_safe_avgt_jmhStub@16 (line 182) 4.77% 2.42% 0x00007fb2e11c2f16: mov %rax,%r13 1.21% 0.88% 0x00007fb2e11c2f19: mov %rax,%r10 0x00007fb2e11c2f1c: shr $0x3,%r10 ;*putfield instance ; - org.sample.singletons.FinalWrapper$FinalWrapperFactory$FW::<init>@6 (line 97) ; - org.sample.singletons.FinalWrapper$FinalWrapperFactory::getInstance@35 (line 86) ; - org.sample.singletons.FinalWrapper::first_safe@12 (line 74) ; - org.sample.singletons.generated.FinalWrapper_first_safe::first_safe_avgt_jmhStub@16 (line 182) 0.27% 0.22% 0x00007fb2e11c2f20: shr $0x9,%r13 4.08% 3.04% 0x00007fb2e11c2f24: mov $0x7fb2dd1ff000,%rax 1.08% 0.97% 0x00007fb2e11c2f2e: mov %r12b,(%rax,%r13,1) ;*synchronization entry ; - org.sample.singletons.FinalWrapper$$Lambda$1/710857960::get@-1 ; - org.sample.singletons.FinalWrapper$FinalWrapperFactory::getInstance@27 (line 86) ; - org.sample.singletons.FinalWrapper::first_safe@12 (line 74) ; - org.sample.singletons.generated.FinalWrapper_first_safe::first_safe_avgt_jmhStub@16 (line 182) 0.61% 0.31% 0x00007fb2e11c2f32: mov %r10d,0xc(%r8) 0.31% 0.27% 0x00007fb2e11c2f36: shr $0x9,%r8 3.29% 3.98% 0x00007fb2e11c2f3a: mov %r12b,(%rax,%r8,1) ;*synchronization entry ; - org.sample.singletons.FinalWrapper$FinalWrapperFactory::getInstance@-1 (line 81) ; - org.sample.singletons.FinalWrapper::first_safe@12 (line 74) ; - org.sample.singletons.generated.FinalWrapper_first_safe::first_safe_avgt_jmhStub@16 (line 182) 1.27% 1.63% 0x00007fb2e11c2f3e: imul $0x19660d,0xc0(%r11),%r8d 0.67% 0.69% 0x00007fb2e11c2f49: add $0x3c6ef35f,%r8d ;*iadd ; - org.openjdk.jmh.infra.Blackhole::consume@10 (line 274) ; - org.sample.singletons.generated.FinalWrapper_first_safe::first_safe_avgt_jmhStub@19 (line 182) 0.42% 0.24% 0x00007fb2e11c2f50: mov %r8d,0xc0(%r11) ;*putfield tlr ; - org.openjdk.jmh.infra.Blackhole::consume@12 (line 274) ; - org.sample.singletons.generated.FinalWrapper_first_safe::first_safe_avgt_jmhStub@19 (line 182) 3.73% 4.49% 0x00007fb2e11c2f57: test %r8d,0xc4(%r11) 0.01% 0x00007fb2e11c2f5e: je 0x00007fb2e11c308e ;*invokevirtual consume ; - org.sample.singletons.generated.FinalWrapper_first_safe::first_safe_avgt_jmhStub@19 (line 182) 1.75% 2.24% 0x00007fb2e11c2f64: movzbl 0x94(%rdx),%r10d ;*getfield isDone ; - org.sample.singletons.generated.FinalWrapper_first_safe::first_safe_avgt_jmhStub@29 (line 184) 0.55% 0.64% 0x00007fb2e11c2f6c: add $0x1,%rbp ; OopMap{r11=Oop r9=Oop rcx=Oop rbx=Oop rdx=Oop off=592} ;*ifeq ; - org.sample.singletons.generated.FinalWrapper_first_safe::first_safe_avgt_jmhStub@32 (line 184) 0.24% 0.25% 0x00007fb2e11c2f70: test %eax,0x16c3708a(%rip) # 0x00007fb2f7dfa000 ; {poll} 3.65% 5.62% 0x00007fb2e11c2f76: test %r10d,%r10d 0.01% 0x00007fb2e11c2f79: jne 0x00007fb2e11c2eb0 ;*aload ; - org.sample.singletons.generated.FinalWrapper_first_safe::first_safe_avgt_jmhStub@13 (line 182) 1.30% 2.14% 0x00007fb2e11c2f7f: mov 0x60(%r15),%r8 0.42% 0.70% 0x00007fb2e11c2f83: mov %r8,%r10 0.18% 0.27% 0x00007fb2e11c2f86: add $0x10,%r10 3.62% 5.25% 0x00007fb2e11c2f8a: cmp 0x70(%r15),%r10 0x00007fb2e11c2f8e: jae 0x00007fb2e11c3030 1.45% 2.17% 0x00007fb2e11c2f94: mov %r10,0x60(%r15) 0.33% 0.63% 0x00007fb2e11c2f98: prefetchnta 0xc0(%r10) 0.58% 0.96% 0x00007fb2e11c2fa0: mov 0xa8(%rsi),%r10 4.17% 5.34% 0x00007fb2e11c2fa7: mov %r10,(%r8) 2.30% 2.44% 0x00007fb2e11c2faa: movl $0xf80101fc,0x8(%r8) ; {metadata('org/sample/singletons/FinalWrapper$FinalWrapperFactory$FW')} 0.99% 1.51% 0x00007fb2e11c2fb2: mov %r12d,0xc(%r8) ;*new ; - org.sample.singletons.FinalWrapper$FinalWrapperFactory::getInstance@22 (line 86) ; - org.sample.singletons.FinalWrapper::first_safe@12 (line 74) ; - org.sample.singletons.generated.FinalWrapper_first_safe::first_safe_avgt_jmhStub@16 (line 182) 1.38% 1.88% 0x00007fb2e11c2fb6: mov 0x60(%r15),%rax 3.65% 4.08% 0x00007fb2e11c2fba: mov %rax,%r10 1.18% 2.30% 0x00007fb2e11c2fbd: add $0x10,%r10 0.93% 1.35% 0x00007fb2e11c2fc1: cmp 0x70(%r15),%r10 0.01% 0.01% 0x00007fb2e11c2fc5: jb 0x00007fb2e11c2ee0 0x00007fb2e11c2fcb: mov %r8,0x38(%rsp) 0x00007fb2e11c2fd0: mov %rdi,0x30(%rsp) 0x00007fb2e11c2fd5: mov %rsi,0x28(%rsp) 0x00007fb2e11c2fda: mov %rcx,0x20(%rsp) 0x00007fb2e11c2fdf: mov %r11,0x18(%rsp) 0x00007fb2e11c2fe4: mov %rdx,0x10(%rsp) 0x00007fb2e11c2fe9: mov %r9,0x8(%rsp) 0x00007fb2e11c2fee: mov %rbx,(%rsp) ;*synchronization entry ; - org.sample.singletons.FinalWrapper$$Lambda$1/710857960::get@-1 ; - org.sample.singletons.FinalWrapper$FinalWrapperFactory::getInstance@27 (line 86) .................................................................................................... 90.66% 91.07% ....[Hottest Regions]............................................................................... 90.66% 91.07% [0x7fb2e11c2ee0:0x7fb2e11c2fc5] in org.sample.singletons.generated.FinalWrapper_first_safe::first_safe_avgt_jmhStub 6.40% 6.55% [0x0:0x0] in 1.20% 0.81% [0x7fb2f6a196c0:0x7fb2f6a196c9] in java.lang.Math::max 0.51% 0.75% [0x7fb2f6c4e370:0x7fb2f6c4e378] in _ZN22ParallelTaskTerminator17offer_terminationEP20TerminatorTerminator (libjvm.so) 0.09% 0.01% [0x7fb2f6ba5406:0x7fb2f6ba5406] in java.lang.Math::max 0.09% 0.06% [0x7fb2f6c40258:0x7fb2f6c40265] in _ZN11StringTable17unlink_or_oops_doEP17BoolObjectClosureP10OopClosurePiS4_ (libjvm.so) 0.06% [0x7fb2f79cc35d:0x7fb2f79cc361] in [unknown] (libpthread-2.19.so) 0.04% [0x7fb2f6ba4930:0x7fb2f6ba493f] in java.lang.Math::max 0.04% 0.10% [0x7fb2f6c402d7:0x7fb2f6c402e6] in _ZN11StringTable17unlink_or_oops_doEP17BoolObjectClosureP10OopClosurePiS4_ (libjvm.so) 0.04% 0.03% [0x7fb2f79c940d:0x7fb2f79c9414] in pthread_cond_wait@@GLIBC_2.3.2 (libpthread-2.19.so) 0.03% [0x7fb2f66415f3:0x7fb2f66415f3] in java.lang.Math::max 0.03% [0x7fb2f6c40d20:0x7fb2f6c40d36] in _ZN11SymbolTable11lookup_onlyEPKciRj (libjvm.so) 0.03% [0x7fb2f79c97d1:0x7fb2f79c97d1] in pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread-2.19.so) 0.01% [0x7fb2c2b415e2:0x7fb2c2b415e2] in [unknown] ([unknown]) 0.01% [0x7fb2c2b4234b:0x7fb2c2b4234b] in [unknown] ([unknown]) 0.01% [0x7fb2e1010940:0x7fb2e1010940] in [unknown] ([unknown]) 0.01% [0x7fb2e1020502:0x7fb2e1020502] in [unknown] ([unknown]) 0.01% [0x7fb2f65e01a0:0x7fb2f65e01a0] in java.lang.Math::max 0.01% [0x7fb2f6657ea7:0x7fb2f6657ea7] in java.lang.Math::max 0.01% [0x7fb2f66bce81:0x7fb2f66bce81] in java.lang.Math::max 0.64% 0.61% <...other 76 warm regions...> .................................................................................................... 99.99% 100.00% ....[Hottest Methods (after inlining)].............................................................. 90.66% 91.07% org.sample.singletons.generated.FinalWrapper_first_safe::first_safe_avgt_jmhStub 6.40% 6.55% 1.74% 1.26% java.lang.Math::max 0.51% 0.75% _ZN22ParallelTaskTerminator17offer_terminationEP20TerminatorTerminator (libjvm.so) 0.15% 0.16% _ZN11StringTable17unlink_or_oops_doEP17BoolObjectClosureP10OopClosurePiS4_ (libjvm.so) 0.06% [unknown] (libpthread-2.19.so) 0.06% 0.01% [unknown] ([unknown]) 0.04% _ZN11SymbolTable11lookup_onlyEPKciRj (libjvm.so) 0.04% 0.03% pthread_cond_wait@@GLIBC_2.3.2 (libpthread-2.19.so) 0.03% pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread-2.19.so) 0.01% _IO_fwrite (libc-2.19.so) 0.01% pthread_mutex_lock (libpthread-2.19.so) 0.01% __vdso_clock_gettime ([vdso]) 0.01% _ZN9xmlStream5flushEv (libjvm.so) 0.01% 0.01% __strchrnul (libc-2.19.so) 0.01% __lll_unlock_wake (libpthread-2.19.so) 0.01% _ZN13CollectedHeap27post_allocation_setup_arrayE11KlassHandleP8HeapWordi (libjvm.so) 0.01% _ZN4UTF815as_quoted_asciiEPKciPci (libjvm.so) 0.01% __pthread_disable_asynccancel (libpthread-2.19.so) 0.01% _ZNK13WatcherThread5sleepEv (libjvm.so) 0.13% 0.03% <...other 9 warm methods...> .................................................................................................... 99.99% 99.88% ....[Distribution by Area].......................................................................... 92.40% 92.33% 6.40% 6.55% 0.81% 0.96% 0.19% 0.03% 0.10% 0.12% 0.06% 0.01% 0.01% .................................................................................................... 99.99% 100.00% # VM invoker: /home/shade/Install/jdk8u40/jre/bin/java # VM options: # Warmup: 5 iterations, 1 s each # Measurement: 5 iterations, 1 s each # Timeout: 10 min per iteration # Threads: 1 thread, will synchronize iterations # Benchmark mode: Average time, time/op # Benchmark: org.sample.singletons.FinalWrapper.first_unsafe # Run progress: 7.14% complete, ETA 00:02:54 # Fork: 1 of 1 # Preparing profilers: perfasm # Profilers consume stdout and stderr from target VM, use -v EXTRA to copy to console # Warmup Iteration 1: 6.822 ns/op # Warmup Iteration 2: 5.028 ns/op # Warmup Iteration 3: 4.138 ns/op # Warmup Iteration 4: 4.114 ns/op # Warmup Iteration 5: 4.126 ns/op Iteration 1: 4.170 ns/op Iteration 2: 4.154 ns/op Iteration 3: 4.151 ns/op Iteration 4: 4.112 ns/op Iteration 5: 4.178 ns/op # Processing profiler results: perfasm Result: 4.153 ±(99.9%) 0.099 ns/op [Average] Statistics: (min, avg, max) = (4.112, 4.153, 4.178), stdev = 0.026 Confidence interval (99.9%): [4.054, 4.252] PrintAssembly processed: 88746 total address lines. Perf output processed (skipped 6.000 seconds): Column 1: cycles (6695 events) Column 2: instructions (6682 events) Hottest code regions (>10.00% "cycles" events): ....[Hottest Region 1].............................................................................. [0x7fd3211d6d90:0x7fd3211d6e78] in org.sample.singletons.generated.FinalWrapper_first_unsafe::first_unsafe_avgt_jmhStub 0x00007fd3211d6d7a: mov %rax,0x28(%rbx) ;*putfield stopTime ; - org.sample.singletons.generated.FinalWrapper_first_unsafe::first_unsafe_avgt_jmhStub@39 (line 185) 0x00007fd3211d6d7e: mov %r12,0x18(%rbx) ;*putfield realTime ; - org.sample.singletons.generated.FinalWrapper_first_unsafe::first_unsafe_avgt_jmhStub@45 (line 186) 0x00007fd3211d6d82: add $0x60,%rsp 0x00007fd3211d6d86: pop %rbp 0x00007fd3211d6d87: test %eax,0x18080273(%rip) # 0x00007fd339257000 ; {poll_return} 0x00007fd3211d6d8d: retq 0x00007fd3211d6d8e: xchg %ax,%ax 3.44% 5.76% 0x00007fd3211d6d90: mov %r10,0x60(%r15) 1.93% 2.10% 0x00007fd3211d6d94: prefetchnta 0xc0(%r10) 6.68% 8.26% 0x00007fd3211d6d9c: mov 0xa8(%rdi),%r10 0.52% 0.36% 0x00007fd3211d6da3: mov %r10,(%rax) 13.29% 10.64% 0x00007fd3211d6da6: movl $0xf801017b,0x8(%rax) ; {metadata('org/sample/singletons/SingletonUnsafe')} 8.41% 5.42% 0x00007fd3211d6dad: mov %r12d,0xc(%rax) ;*new ; - org.sample.singletons.FinalWrapper$$Lambda$1/1382836190::get@0 ; - org.sample.singletons.FinalWrapper$FinalWrapperFactory::getInstance@27 (line 86) ; - org.sample.singletons.FinalWrapper::first_unsafe@12 (line 69) ; - org.sample.singletons.generated.FinalWrapper_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 3.94% 1.38% 0x00007fd3211d6db1: mov $0x5c9e06010,%r10 ; {oop(a 'java/lang/Byte'[256] )} 0.04% 0x00007fd3211d6dbb: mov 0x2b8(%r10),%r10d ;*aaload ; - java.lang.Byte::valueOf@8 (line 103) ; - org.sample.singletons.SingletonUnsafe::<init>@7 (line 29) ; - org.sample.singletons.FinalWrapper$$Lambda$1/1382836190::get@4 ; - org.sample.singletons.FinalWrapper$FinalWrapperFactory::getInstance@27 (line 86) ; - org.sample.singletons.FinalWrapper::first_unsafe@12 (line 69) ; - org.sample.singletons.generated.FinalWrapper_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 0.45% 0.27% 0x00007fd3211d6dc2: mov %r10d,0xc(%rax) ;*putfield x ; - org.sample.singletons.SingletonUnsafe::<init>@10 (line 29) ; - org.sample.singletons.FinalWrapper$$Lambda$1/1382836190::get@4 ; - org.sample.singletons.FinalWrapper$FinalWrapperFactory::getInstance@27 (line 86) ; - org.sample.singletons.FinalWrapper::first_unsafe@12 (line 69) ; - org.sample.singletons.generated.FinalWrapper_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 4.60% 2.02% 0x00007fd3211d6dc6: mov %r8,%r13 1.46% 0.87% 0x00007fd3211d6dc9: mov %rax,%r14 0.01% 0.01% 0x00007fd3211d6dcc: mov %rax,%r10 0.25% 0.16% 0x00007fd3211d6dcf: shr $0x3,%r10 4.05% 3.13% 0x00007fd3211d6dd3: mov %r10d,0xc(%r8) ;*putfield instance ; - org.sample.singletons.FinalWrapper$FinalWrapperFactory$FW::<init>@6 (line 97) ; - org.sample.singletons.FinalWrapper$FinalWrapperFactory::getInstance@35 (line 86) ; - org.sample.singletons.FinalWrapper::first_unsafe@12 (line 69) ; - org.sample.singletons.generated.FinalWrapper_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 1.72% 0.94% 0x00007fd3211d6dd7: shr $0x9,%r13 0.04% 0x00007fd3211d6ddb: shr $0x9,%r14 0.16% 0.09% 0x00007fd3211d6ddf: mov $0x7fd33214b000,%r8 3.72% 3.79% 0x00007fd3211d6de9: mov %r12b,(%r8,%r14,1) ;*putfield x ; - org.sample.singletons.SingletonUnsafe::<init>@10 (line 29) ; - org.sample.singletons.FinalWrapper$$Lambda$1/1382836190::get@4 ; - org.sample.singletons.FinalWrapper$FinalWrapperFactory::getInstance@27 (line 86) ; - org.sample.singletons.FinalWrapper::first_unsafe@12 (line 69) ; - org.sample.singletons.generated.FinalWrapper_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 1.63% 1.47% 0x00007fd3211d6ded: mov %r12b,(%r8,%r13,1) ;*synchronization entry ; - org.sample.singletons.FinalWrapper$FinalWrapperFactory::getInstance@-1 (line 81) ; - org.sample.singletons.FinalWrapper::first_unsafe@12 (line 69) ; - org.sample.singletons.generated.FinalWrapper_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 0.12% 0.04% 0x00007fd3211d6df1: imul $0x19660d,0xc0(%r11),%r8d 0.39% 0.36% 0x00007fd3211d6dfc: add $0x3c6ef35f,%r8d ;*iadd ; - org.openjdk.jmh.infra.Blackhole::consume@10 (line 274) ; - org.sample.singletons.generated.FinalWrapper_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 3.88% 4.38% 0x00007fd3211d6e03: mov %r8d,0xc0(%r11) ;*putfield tlr ; - org.openjdk.jmh.infra.Blackhole::consume@12 (line 274) ; - org.sample.singletons.generated.FinalWrapper_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 1.54% 2.08% 0x00007fd3211d6e0a: test %r8d,0xc4(%r11) 0.01% 0x00007fd3211d6e11: je 0x00007fd3211d6f3e ;*invokevirtual consume ; - org.sample.singletons.generated.FinalWrapper_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 0.18% 0.19% 0x00007fd3211d6e17: movzbl 0x94(%rdx),%r10d ;*getfield isDone ; - org.sample.singletons.generated.FinalWrapper_first_unsafe::first_unsafe_avgt_jmhStub@29 (line 184) 0.42% 0.54% 0x00007fd3211d6e1f: add $0x1,%rbp ; OopMap{r11=Oop r9=Oop rcx=Oop rbx=Oop rdx=Oop off=579} ;*ifeq ; - org.sample.singletons.generated.FinalWrapper_first_unsafe::first_unsafe_avgt_jmhStub@32 (line 184) 3.55% 5.49% 0x00007fd3211d6e23: test %eax,0x180801d7(%rip) # 0x00007fd339257000 ; {poll} 1.88% 2.13% 0x00007fd3211d6e29: test %r10d,%r10d 0x00007fd3211d6e2c: jne 0x00007fd3211d6d69 ;*aload ; - org.sample.singletons.generated.FinalWrapper_first_unsafe::first_unsafe_avgt_jmhStub@13 (line 182) 0.13% 0.07% 0x00007fd3211d6e32: mov 0x60(%r15),%r8 0.28% 0.55% 0x00007fd3211d6e36: mov %r8,%r10 3.84% 5.79% 0x00007fd3211d6e39: add $0x10,%r10 1.37% 2.21% 0x00007fd3211d6e3d: cmp 0x70(%r15),%r10 0.01% 0x00007fd3211d6e41: jae 0x00007fd3211d6ee0 0.33% 0.13% 0x00007fd3211d6e47: mov %r10,0x60(%r15) 0.21% 0.21% 0x00007fd3211d6e4b: prefetchnta 0xc0(%r10) 4.90% 6.26% 0x00007fd3211d6e53: mov 0xa8(%rsi),%r10 1.84% 2.57% 0x00007fd3211d6e5a: mov %r10,(%r8) 0.79% 0.82% 0x00007fd3211d6e5d: movl $0xf80101fc,0x8(%r8) ; {metadata('org/sample/singletons/FinalWrapper$FinalWrapperFactory$FW')} 0.69% 1.03% 0x00007fd3211d6e65: mov %r12d,0xc(%r8) ;*new ; - org.sample.singletons.FinalWrapper$FinalWrapperFactory::getInstance@22 (line 86) ; - org.sample.singletons.FinalWrapper::first_unsafe@12 (line 69) ; - org.sample.singletons.generated.FinalWrapper_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 3.99% 5.73% 0x00007fd3211d6e69: mov 0x60(%r15),%rax 2.58% 2.39% 0x00007fd3211d6e6d: mov %rax,%r10 0.48% 0.34% 0x00007fd3211d6e70: add $0x10,%r10 0.67% 0.88% 0x00007fd3211d6e74: cmp 0x70(%r15),%r10 0.01% 0x00007fd3211d6e78: jb 0x00007fd3211d6d90 0x00007fd3211d6e7e: mov %r8,0x38(%rsp) 0x00007fd3211d6e83: mov %rdi,0x30(%rsp) 0x00007fd3211d6e88: mov %rsi,0x28(%rsp) 0x00007fd3211d6e8d: mov %rcx,0x20(%rsp) 0x00007fd3211d6e92: mov %r11,0x18(%rsp) 0x00007fd3211d6e97: mov %rdx,0x10(%rsp) 0x00007fd3211d6e9c: mov %r9,0x8(%rsp) 0x00007fd3211d6ea1: mov %rbx,(%rsp) ;*synchronization entry ; - org.sample.singletons.FinalWrapper$$Lambda$1/1382836190::get@-1 ; - org.sample.singletons.FinalWrapper$FinalWrapperFactory::getInstance@27 (line 86) .................................................................................................... 90.47% 90.90% ....[Hottest Regions]............................................................................... 90.47% 90.90% [0x7fd3211d6d90:0x7fd3211d6e78] in org.sample.singletons.generated.FinalWrapper_first_unsafe::first_unsafe_avgt_jmhStub 4.59% 4.52% [0x0:0x0] in 2.87% 1.74% [0x7fd337e786c0:0x7fd337e786c9] in SpinPause (libjvm.so) 0.94% 1.86% [0x7fd3380ad370:0x7fd3380ad378] in java.net.SocketOutputStream::socketWrite0 0.09% [0x7fd338e2b35d:0x7fd338e2b35d] in [unknown] (libpthread-2.19.so) 0.06% 0.01% [0x7fd337fa71a0:0x7fd337fa71ae] in _ZN10fileStream5writeEPKcm (libjvm.so) 0.06% 0.01% [0x7fd338004406:0x7fd338004406] in _ZN22PSScavengeKlassClosure8do_klassEP5Klass (libjvm.so) 0.04% 0.01% [0x7fd337f598dc:0x7fd337f598f5] in _ZN7Monitor6unlockEv (libjvm.so) 0.03% 0.15% [0x7fd33801a8a3:0x7fd33801a909] in _ZN13RelocIterator10initializeEP7nmethodPhS2_ (libjvm.so) 0.03% 0.07% [0x7fd33809f250:0x7fd33809f260] in java.net.SocketOutputStream::socketWrite0 0.03% [0x7fd338686fbf:0x7fd338686fc9] in vfprintf (libc-2.19.so) 0.01% [0x7fd2ec233628:0x7fd2ec233628] in [unknown] ([unknown]) 0.01% [0x7fd2ec2355cf:0x7fd2ec2355cf] in [unknown] ([unknown]) 0.01% [0x7fd2ec2385b3:0x7fd2ec2385b3] in [unknown] ([unknown]) 0.01% [0x7fd2ec238640:0x7fd2ec238640] in [unknown] ([unknown]) 0.01% [0x7fd321010940:0x7fd321010940] in [unknown] ([unknown]) 0.01% [0x7fd321018308:0x7fd321018308] in [unknown] ([unknown]) 0.01% [0x7fd321024933:0x7fd321024933] in [unknown] ([unknown]) 0.01% [0x7fd3379205c0:0x7fd3379205c0] in _ZN23runtime_call_Relocation4typeEv (libjvm.so) 0.01% [0x7fd337a28ebe:0x7fd337a28ebe] in _ZN16LIR_OpVisitState8do_inputERP11LIR_OprDesc (libjvm.so) 0.66% 0.70% <...other 78 warm regions...> .................................................................................................... 100.00% 99.99% ....[Hottest Methods (after inlining)].............................................................. 90.47% 90.90% org.sample.singletons.generated.FinalWrapper_first_unsafe::first_unsafe_avgt_jmhStub 4.59% 4.52% 2.87% 1.74% SpinPause (libjvm.so) 1.06% 2.04% java.net.SocketOutputStream::socketWrite0 0.10% 0.01% [unknown] ([unknown]) 0.09% [unknown] (libpthread-2.19.so) 0.07% 0.01% _ZN10fileStream5writeEPKcm (libjvm.so) 0.07% 0.04% vfprintf (libc-2.19.so) 0.06% 0.01% _ZN22PSScavengeKlassClosure8do_klassEP5Klass (libjvm.so) 0.04% 0.01% _ZN7Monitor6unlockEv (libjvm.so) 0.03% 0.03% _IO_fwrite (libc-2.19.so) 0.03% 0.15% _ZN13RelocIterator10initializeEP7nmethodPhS2_ (libjvm.so) 0.01% jio_print (libjvm.so) 0.01% _ZN7Monitor28lock_without_safepoint_checkEv (libjvm.so) 0.01% _ZN13CollectedHeap21new_store_pre_barrierEP10JavaThreadP7oopDesc (libjvm.so) 0.01% _IO_no_init (libc-2.19.so) 0.01% _ZN14CompilerOracle14should_excludeE12methodHandleRb (libjvm.so) 0.01% _ZN13InstanceKlass8mask_forE12methodHandleiP17InterpreterOopMap (libjvm.so) 0.01% _ZN7Monitor5ILockEP6Thread (libjvm.so) 0.01% _ZNK20ParallelScavengeHeap29can_elide_tlab_store_barriersEv (libjvm.so) 0.39% 0.13% <...other 26 warm methods...> .................................................................................................... 100.00% 99.61% ....[Distribution by Area].......................................................................... 91.53% 92.94% 4.59% 4.52% 3.42% 2.30% 0.22% 0.21% 0.13% 0.10% 0.01% .................................................................................................... 100.00% 99.99% # VM invoker: /home/shade/Install/jdk8u40/jre/bin/java # VM options: # Warmup: 5 iterations, 1 s each # Measurement: 5 iterations, 1 s each # Timeout: 10 min per iteration # Threads: 1 thread, will synchronize iterations # Benchmark mode: Average time, time/op # Benchmark: org.sample.singletons.Holder.first_safe # Run progress: 14.29% complete, ETA 00:02:39 # Fork: 1 of 1 # Preparing profilers: perfasm # Profilers consume stdout and stderr from target VM, use -v EXTRA to copy to console # Warmup Iteration 1: 2.305 ns/op # Warmup Iteration 2: 2.260 ns/op # Warmup Iteration 3: 2.261 ns/op # Warmup Iteration 4: 2.261 ns/op # Warmup Iteration 5: 2.261 ns/op Iteration 1: 2.265 ns/op Iteration 2: 2.261 ns/op Iteration 3: 2.260 ns/op Iteration 4: 2.261 ns/op Iteration 5: 2.270 ns/op # Processing profiler results: perfasm Result: 2.263 ±(99.9%) 0.016 ns/op [Average] Statistics: (min, avg, max) = (2.260, 2.263, 2.270), stdev = 0.004 Confidence interval (99.9%): [2.247, 2.279] PrintAssembly processed: 60238 total address lines. Perf output processed (skipped 6.000 seconds): Column 1: cycles (6339 events) Column 2: instructions (6351 events) Hottest code regions (>10.00% "cycles" events): ....[Hottest Region 1].............................................................................. [0x7f0bd8f64c28:0x7f0bd8f64c59] in org.sample.singletons.generated.Holder_first_safe::first_safe_avgt_jmhStub 0x00007f0bd8f64c07: lock addl $0x0,(%rsp) ;*putfield obj1 ; - org.openjdk.jmh.infra.Blackhole::consume@27 (line 277) ; - org.sample.singletons.generated.Holder_first_safe::first_safe_avgt_jmhStub@19 (line 182) 0x00007f0bd8f64c0c: mov 0xc4(%rcx),%r10d 0x00007f0bd8f64c13: shl %r10d 0x00007f0bd8f64c16: inc %r10d 0x00007f0bd8f64c19: mov %r10d,0xc4(%rcx) ;*invokevirtual consume ; - org.sample.singletons.generated.Holder_first_safe::first_safe_avgt_jmhStub@19 (line 182) 0x00007f0bd8f64c20: movzbl 0x94(%rdx),%r11d ;*getfield isDone ; - org.sample.singletons.generated.Holder_first_safe::first_safe_avgt_jmhStub@29 (line 184) 0.02% 0x00007f0bd8f64c28: add $0x1,%rbp ; OopMap{r8=NarrowOop r9=Oop rcx=Oop rbx=Oop rdx=Oop off=268} ;*ifeq ; - org.sample.singletons.generated.Holder_first_safe::first_safe_avgt_jmhStub@32 (line 184) 10.65% 35.08% 0x00007f0bd8f64c2c: test %eax,0x15ef13ce(%rip) # 0x00007f0beee56000 ; {poll} 0x00007f0bd8f64c32: test %r11d,%r11d 0x00007f0bd8f64c35: jne 0x00007f0bd8f64bd0 ;*aload ; - org.sample.singletons.generated.Holder_first_safe::first_safe_avgt_jmhStub@13 (line 182) 0x00007f0bd8f64c37: imul $0x19660d,0xc0(%rcx),%r11d 63.76% 9.34% 0x00007f0bd8f64c42: add $0x3c6ef35f,%r11d ;*iadd ; - org.openjdk.jmh.infra.Blackhole::consume@10 (line 274) ; - org.sample.singletons.generated.Holder_first_safe::first_safe_avgt_jmhStub@19 (line 182) 11.01% 8.22% 0x00007f0bd8f64c49: mov %r11d,0xc0(%rcx) ;*putfield tlr ; - org.openjdk.jmh.infra.Blackhole::consume@12 (line 274) ; - org.sample.singletons.generated.Holder_first_safe::first_safe_avgt_jmhStub@19 (line 182) 10.79% 43.39% 0x00007f0bd8f64c50: test %r11d,0xc4(%rcx) 0x00007f0bd8f64c57: je 0x00007f0bd8f64bf5 ;*ifne ; - org.openjdk.jmh.infra.Blackhole::consume@22 (line 275) ; - org.sample.singletons.generated.Holder_first_safe::first_safe_avgt_jmhStub@19 (line 182) 0.02% 0x00007f0bd8f64c59: jmp 0x00007f0bd8f64c20 0x00007f0bd8f64c5b: mov %r8d,0xd4(%rcx) 0x00007f0bd8f64c62: mov %rcx,%r10 0x00007f0bd8f64c65: shr $0x9,%r10 0x00007f0bd8f64c69: mov %r12b,(%rdi,%r10,1) 0x00007f0bd8f64c6d: lock addl $0x0,(%rsp) ;*putfield obj1 ; - org.openjdk.jmh.infra.Blackhole::consume@27 (line 277) ; - org.sample.singletons.generated.Holder_first_safe::first_safe_avgt_jmhStub@19 (line 182) 0x00007f0bd8f64c72: mov 0xc4(%rcx),%r11d .................................................................................................... 96.23% 96.05% ....[Hottest Regions]............................................................................... 96.23% 96.05% [0x7f0bd8f64c28:0x7f0bd8f64c59] in org.sample.singletons.generated.Holder_first_safe::first_safe_avgt_jmhStub 2.95% 3.10% [0x0:0x0] in 0.03% [0x7f0ba211e2a0:0x7f0ba211e2a0] in [unknown] ([unknown]) 0.03% [0x7f0bedb2569b:0x7f0bedb2569e] in 0.03% 0.08% [0x7f0bedba41a0:0x7f0bedba41b7] in 0.03% [0x7f0beea25170:0x7f0beea25170] in pthread_cond_init@@GLIBC_2.3.2 (libpthread-2.19.so) 0.02% [0x7f0ba211eae4:0x7f0ba211eae4] in [unknown] ([unknown]) 0.02% [0x7f0ba212077c:0x7f0ba212077c] in [unknown] ([unknown]) 0.02% [0x7f0ba212313d:0x7f0ba212313d] in [unknown] ([unknown]) 0.02% [0x7f0bd8df5abd:0x7f0bd8df5abd] in [unknown] ([unknown]) 0.02% [0x7f0bd8e07541:0x7f0bd8e07541] in [unknown] ([unknown]) 0.02% [0x7f0bed60fc13:0x7f0bed60fc13] in 0.02% [0x7f0bed61092d:0x7f0bed61092d] in 0.02% [0x7f0bed612fd1:0x7f0bed612fd1] in 0.02% [0x7f0bed668fab:0x7f0bed668fab] in 0.02% [0x7f0bed6ff908:0x7f0bed6ff908] in 0.02% [0x7f0bed782b20:0x7f0bed782b20] in 0.02% [0x7f0bed7f5f33:0x7f0bed7f5f33] in 0.02% [0x7f0bedb54ec0:0x7f0bedb54ec0] in 0.02% [0x7f0bedb562a0:0x7f0bedb562a0] in 0.41% 0.76% <...other 63 warm regions...> .................................................................................................... 99.94% 99.98% ....[Hottest Methods (after inlining)].............................................................. 96.23% 96.05% org.sample.singletons.generated.Holder_first_safe::first_safe_avgt_jmhStub 2.95% 3.10% 0.32% 0.54% 0.11% 0.05% [unknown] ([unknown]) 0.03% 0.03% strlen (libc-2.19.so) 0.03% 0.06% vfprintf (libc-2.19.so) 0.03% _IO_vsnprintf (libc-2.19.so) 0.03% pthread_cond_init@@GLIBC_2.3.2 (libpthread-2.19.so) 0.03% __strchr_sse2 (libc-2.19.so) 0.02% 0.03% pthread_mutex_lock (libpthread-2.19.so) 0.02% pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread-2.19.so) 0.02% sprintf (libc-2.19.so) 0.02% _IO_fflush (libc-2.19.so) 0.02% __sigsetjmp (libc-2.19.so) 0.02% 0.02% _IO_default_xsputn (libc-2.19.so) 0.02% malloc (libc-2.19.so) 0.02% __strchrnul (libc-2.19.so) 0.02% __printf_fp (libc-2.19.so) 0.02% _IO_do_write@@GLIBC_2.2.5 (libc-2.19.so) 0.02% __pthread_disable_asynccancel (libpthread-2.19.so) .................................................................................................... 99.94% 99.87% ....[Distribution by Area].......................................................................... 96.55% 96.60% 2.95% 3.10% 0.25% 0.19% 0.11% 0.05% 0.08% 0.05% .................................................................................................... 99.94% 99.98% # VM invoker: /home/shade/Install/jdk8u40/jre/bin/java # VM options: # Warmup: 5 iterations, 1 s each # Measurement: 5 iterations, 1 s each # Timeout: 10 min per iteration # Threads: 1 thread, will synchronize iterations # Benchmark mode: Average time, time/op # Benchmark: org.sample.singletons.Holder.first_unsafe # Run progress: 21.43% complete, ETA 00:02:25 # Fork: 1 of 1 # Preparing profilers: perfasm # Profilers consume stdout and stderr from target VM, use -v EXTRA to copy to console # Warmup Iteration 1: 2.303 ns/op # Warmup Iteration 2: 2.261 ns/op # Warmup Iteration 3: 2.260 ns/op # Warmup Iteration 4: 2.260 ns/op # Warmup Iteration 5: 2.260 ns/op Iteration 1: 2.260 ns/op Iteration 2: 2.260 ns/op Iteration 3: 2.260 ns/op Iteration 4: 2.260 ns/op Iteration 5: 2.260 ns/op # Processing profiler results: perfasm Result: 2.260 ±(99.9%) 0.000 ns/op [Average] Statistics: (min, avg, max) = (2.260, 2.260, 2.260), stdev = 0.000 Confidence interval (99.9%): [2.260, 2.260] PrintAssembly processed: 65558 total address lines. Perf output processed (skipped 6.000 seconds): Column 1: cycles (6351 events) Column 2: instructions (6347 events) Hottest code regions (>10.00% "cycles" events): ....[Hottest Region 1].............................................................................. [0x7fb7e518cfec:0x7fb7e518d010] in org.sample.singletons.generated.Holder_first_unsafe::first_unsafe_avgt_jmhStub 0x00007fb7e518cfcc: mov 0xc4(%rcx),%r10d 0x00007fb7e518cfd3: shl %r10d 0x00007fb7e518cfd6: inc %r10d 0x00007fb7e518cfd9: mov %r10d,0xc4(%rcx) ;*invokevirtual consume ; - org.sample.singletons.generated.Holder_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 0x00007fb7e518cfe0: movzbl 0x94(%rdx),%r11d ;*getfield isDone ; - org.sample.singletons.generated.Holder_first_unsafe::first_unsafe_avgt_jmhStub@29 (line 184) 0x00007fb7e518cfe8: add $0x1,%rbp ; OopMap{r8=NarrowOop r9=Oop rcx=Oop rbx=Oop rdx=Oop off=268} ;*ifeq ; - org.sample.singletons.generated.Holder_first_unsafe::first_unsafe_avgt_jmhStub@32 (line 184) 10.33% 34.03% 0x00007fb7e518cfec: test %eax,0x16bda00e(%rip) # 0x00007fb7fbd67000 ; {poll} 0x00007fb7e518cff2: test %r11d,%r11d 0x00007fb7e518cff5: jne 0x00007fb7e518cf90 ;*aload ; - org.sample.singletons.generated.Holder_first_unsafe::first_unsafe_avgt_jmhStub@13 (line 182) 0x00007fb7e518cff7: imul $0x19660d,0xc0(%rcx),%r11d 62.68% 8.78% 0x00007fb7e518d002: add $0x3c6ef35f,%r11d ;*iadd ; - org.openjdk.jmh.infra.Blackhole::consume@10 (line 274) ; - org.sample.singletons.generated.Holder_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 11.04% 9.06% 0x00007fb7e518d009: mov %r11d,0xc0(%rcx) ;*putfield tlr ; - org.openjdk.jmh.infra.Blackhole::consume@12 (line 274) ; - org.sample.singletons.generated.Holder_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 10.93% 43.15% 0x00007fb7e518d010: test %r11d,0xc4(%rcx) 0x00007fb7e518d017: je 0x00007fb7e518cfb5 ;*ifne ; - org.openjdk.jmh.infra.Blackhole::consume@22 (line 275) ; - org.sample.singletons.generated.Holder_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 0x00007fb7e518d019: jmp 0x00007fb7e518cfe0 0x00007fb7e518d01b: mov %r8d,0xd4(%rcx) 0x00007fb7e518d022: mov %rcx,%r10 0x00007fb7e518d025: shr $0x9,%r10 0x00007fb7e518d029: mov %r12b,(%rdi,%r10,1) .................................................................................................... 94.98% 95.02% ....[Hottest Regions]............................................................................... 94.98% 95.02% [0x7fb7e518cfec:0x7fb7e518d010] in org.sample.singletons.generated.Holder_first_unsafe::first_unsafe_avgt_jmhStub 4.22% 4.06% [0x0:0x0] in 0.06% 0.02% [0x7fb7fac5aa90:0x7fb7fac5aae3] in java.lang.AbstractStringBuilder::append 0.05% [0x7fb7fb2373cd:0x7fb7fb2373cd] in __GI___libc_write (libc-2.19.so) 0.03% 0.06% [0x7fb7faab2e9b:0x7fb7faab2eb8] in java.lang.AbstractStringBuilder::append 0.02% [0x7fb7caabcfd1:0x7fb7caabcfd1] in [unknown] ([unknown]) 0.02% [0x7fb7cab3d292:0x7fb7cab3d292] in [unknown] ([unknown]) 0.02% [0x7fb7cab415e2:0x7fb7cab415e2] in [unknown] ([unknown]) 0.02% [0x7fb7cab41611:0x7fb7cab41611] in [unknown] ([unknown]) 0.02% [0x7fb7cab4176e:0x7fb7cab4176e] in [unknown] ([unknown]) 0.02% [0x7fb7cab41b07:0x7fb7cab41b07] in [unknown] ([unknown]) 0.02% [0x7fb7cab421c4:0x7fb7cab421c4] in [unknown] ([unknown]) 0.02% [0x7fb7e5007991:0x7fb7e5007991] in [unknown] ([unknown]) 0.02% [0x7fb7e5157066:0x7fb7e5157066] in java.lang.String::equals 0.02% [0x7fb7f8e1dc80:0x7fb7f8e1dc80] in java.lang.AbstractStringBuilder::append 0.02% [0x7fb7fa3d3b38:0x7fb7fa3d3b38] in java.lang.AbstractStringBuilder::append 0.02% [0x7fb7fa5033d1:0x7fb7fa5033d1] in java.lang.AbstractStringBuilder::append 0.02% [0x7fb7fa52b16e:0x7fb7fa52b16e] in java.lang.AbstractStringBuilder::append 0.02% [0x7fb7fa573539:0x7fb7fa573539] in java.lang.AbstractStringBuilder::append 0.02% [0x7fb7fa59fdb0:0x7fb7fa59fdb0] in java.lang.AbstractStringBuilder::append 0.31% 0.82% <...other 62 warm regions...> .................................................................................................... 99.89% 99.98% ....[Hottest Methods (after inlining)].............................................................. 94.98% 95.02% org.sample.singletons.generated.Holder_first_unsafe::first_unsafe_avgt_jmhStub 4.22% 4.06% 0.43% 0.60% java.lang.AbstractStringBuilder::append 0.13% 0.02% [unknown] ([unknown]) 0.05% __GI___libc_write (libc-2.19.so) 0.03% 0.02% _IO_fwrite (libc-2.19.so) 0.02% 0.02% _IO_vsnprintf (libc-2.19.so) 0.02% java.lang.String::equals 0.02% 0.05% vfprintf (libc-2.19.so) 0.02% _IO_file_xsputn@@GLIBC_2.2.5 (libc-2.19.so) .................................................................................................... 99.89% 99.78% ....[Distribution by Area].......................................................................... 95.42% 95.65% 4.22% 4.06% 0.13% 0.02% 0.13% 0.20% .................................................................................................... 99.89% 99.98% # VM invoker: /home/shade/Install/jdk8u40/jre/bin/java # VM options: # Warmup: 5 iterations, 1 s each # Measurement: 5 iterations, 1 s each # Timeout: 10 min per iteration # Threads: 1 thread, will synchronize iterations # Benchmark mode: Average time, time/op # Benchmark: org.sample.singletons.SafeDCL.first_safe # Run progress: 28.57% complete, ETA 00:02:11 # Fork: 1 of 1 # Preparing profilers: perfasm # Profilers consume stdout and stderr from target VM, use -v EXTRA to copy to console # Warmup Iteration 1: 11.447 ns/op # Warmup Iteration 2: 8.381 ns/op # Warmup Iteration 3: 6.712 ns/op # Warmup Iteration 4: 6.681 ns/op # Warmup Iteration 5: 6.690 ns/op Iteration 1: 6.721 ns/op Iteration 2: 6.742 ns/op Iteration 3: 6.742 ns/op Iteration 4: 6.694 ns/op Iteration 5: 6.769 ns/op # Processing profiler results: perfasm Result: 6.734 ±(99.9%) 0.107 ns/op [Average] Statistics: (min, avg, max) = (6.694, 6.734, 6.769), stdev = 0.028 Confidence interval (99.9%): [6.627, 6.841] PrintAssembly processed: 84394 total address lines. Perf output processed (skipped 6.000 seconds): Column 1: cycles (6564 events) Column 2: instructions (6528 events) Hottest code regions (>10.00% "cycles" events): ....[Hottest Region 1].............................................................................. [0x7fc2951d0630:0x7fc2951d06cc] in org.sample.singletons.generated.SafeDCL_first_safe::first_safe_avgt_jmhStub 0x00007fc2951d0614: mov %rax,0x28(%r10) ;*putfield stopTime ; - org.sample.singletons.generated.SafeDCL_first_safe::first_safe_avgt_jmhStub@39 (line 185) 0x00007fc2951d0618: mov %r12,0x18(%r10) ;*putfield realTime ; - org.sample.singletons.generated.SafeDCL_first_safe::first_safe_avgt_jmhStub@45 (line 186) 0x00007fc2951d061c: add $0x40,%rsp 0x00007fc2951d0620: pop %rbp 0x00007fc2951d0621: test %eax,0x15d929d9(%rip) # 0x00007fc2aaf63000 ; {poll_return} 0x00007fc2951d0627: retq 0x00007fc2951d0628: nopl 0x0(%rax,%rax,1) 0.02% 0x00007fc2951d0630: mov %r10,0x60(%r15) 0x00007fc2951d0634: prefetchnta 0xc0(%r10) 0.03% 0x00007fc2951d063c: mov 0x28(%rsp),%r10 3.55% 0x00007fc2951d0641: mov 0xa8(%r10),%r10 0x00007fc2951d0648: mov %r10,(%rax) 0x00007fc2951d064b: movl $0xf801017b,0x8(%rax) ; {metadata('org/sample/singletons/SingletonSafe')} 0x00007fc2951d0652: mov %r12d,0xc(%rax) ;*new ; - org.sample.singletons.SafeDCL$$Lambda$1/1382836190::get@0 ; - org.sample.singletons.SafeDCL$SafeSingletonFactory::getInstance@20 (line 83) ; - org.sample.singletons.SafeDCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.SafeDCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) 3.52% 0x00007fc2951d0656: mov $0x5c9e06010,%r10 ; {oop(a 'java/lang/Byte'[256] )} 0.02% 0x00007fc2951d0660: mov 0x2b8(%r10),%r10d ;*aaload ; - java.lang.Byte::valueOf@8 (line 103) ; - org.sample.singletons.SingletonSafe::<init>@7 (line 30) ; - org.sample.singletons.SafeDCL$$Lambda$1/1382836190::get@4 ; - org.sample.singletons.SafeDCL$SafeSingletonFactory::getInstance@20 (line 83) ; - org.sample.singletons.SafeDCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.SafeDCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) 0.02% 0x00007fc2951d0667: mov %r10d,0xc(%rax) 0.02% 0x00007fc2951d066b: mov %rax,%r10 3.72% 0x00007fc2951d066e: shr $0x9,%r10 0.02% 0.02% 0x00007fc2951d0672: mov $0x7fc290e3f000,%r11 0x00007fc2951d067c: mov %r12b,(%r11,%r10,1) 0x00007fc2951d0680: lock addl $0x0,(%rsp) ;*getfield instance ; - org.sample.singletons.SafeDCL$SafeSingletonFactory::getInstance@42 (line 87) ; - org.sample.singletons.SafeDCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.SafeDCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) 70.17% 92.00% 0x00007fc2951d0685: imul $0x19660d,0xc0(%r8),%r11d 0.05% 0x00007fc2951d0690: add $0x3c6ef35f,%r11d ;*iadd ; - org.openjdk.jmh.infra.Blackhole::consume@10 (line 274) ; - org.sample.singletons.generated.SafeDCL_first_safe::first_safe_avgt_jmhStub@19 (line 182) 0x00007fc2951d0697: mov %r11d,0xc0(%r8) ;*putfield tlr ; - org.openjdk.jmh.infra.Blackhole::consume@12 (line 274) ; - org.sample.singletons.generated.SafeDCL_first_safe::first_safe_avgt_jmhStub@19 (line 182) 3.34% 0x00007fc2951d069e: test %r11d,0xc4(%r8) 0x00007fc2951d06a5: je 0x00007fc2951d06fe ;*invokevirtual consume ; - org.sample.singletons.generated.SafeDCL_first_safe::first_safe_avgt_jmhStub@19 (line 182) 0.02% 0x00007fc2951d06a7: movzbl 0x94(%r9),%ecx ;*getfield isDone ; - org.sample.singletons.generated.SafeDCL_first_safe::first_safe_avgt_jmhStub@29 (line 184) 0x00007fc2951d06af: add $0x1,%rbp ; OopMap{r8=Oop r9=Oop [8]=Oop [16]=Oop off=499} ;*ifeq ; - org.sample.singletons.generated.SafeDCL_first_safe::first_safe_avgt_jmhStub@32 (line 184) 0x00007fc2951d06b3: test %eax,0x15d92947(%rip) # 0x00007fc2aaf63000 ; {poll} 3.23% 0x00007fc2951d06b9: test %ecx,%ecx 0x00007fc2951d06bb: jne 0x00007fc2951d05fe ;*getfield instance ; - org.sample.singletons.SafeDCL$SafeSingletonFactory::getInstance@12 (line 82) ; - org.sample.singletons.SafeDCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.SafeDCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) 0x00007fc2951d06c1: mov 0x60(%r15),%rax 0x00007fc2951d06c5: mov %rax,%r10 0x00007fc2951d06c8: add $0x10,%r10 3.72% 0x00007fc2951d06cc: cmp 0x70(%r15),%r10 0x00007fc2951d06d0: jb 0x00007fc2951d0630 0x00007fc2951d06d6: mov %r8,0x18(%rsp) 0x00007fc2951d06db: mov %r9,(%rsp) 0x00007fc2951d06df: mov $0x7c0080bd8,%rsi ; {metadata('org/sample/singletons/SingletonSafe')} 0x00007fc2951d06e9: xchg %ax,%ax 0x00007fc2951d06eb: callq 0x00007fc295100ca0 ; OopMap{[0]=Oop [8]=Oop [16]=Oop [24]=Oop off=560} ;*new ; - org.sample.singletons.SafeDCL$$Lambda$1/1382836190::get@0 ; - org.sample.singletons.SafeDCL$SafeSingletonFactory::getInstance@20 (line 83) ; - org.sample.singletons.SafeDCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.SafeDCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) .................................................................................................... 91.41% 92.02% ....[Hottest Regions]............................................................................... 91.41% 92.02% [0x7fc2951d0630:0x7fc2951d06cc] in org.sample.singletons.generated.SafeDCL_first_safe::first_safe_avgt_jmhStub 5.30% 5.35% [0x0:0x0] in 1.71% 1.00% [0x7fc2a9b826c0:0x7fc2a9b826c9] in java.lang.Math::max 0.56% 0.83% [0x7fc2a9db7353:0x7fc2a9db7378] in java.lang.Math::max 0.09% [0x7fc2aab3535d:0x7fc2aab3535d] in java.lang.Math::max 0.05% 0.08% [0x7fc2a9cb11a0:0x7fc2a9cb11ae] in java.lang.Math::max 0.05% [0x7fc2a9d0e406:0x7fc2a9d0e406] in java.lang.Math::max 0.05% 0.12% [0x7fc2a9d248a7:0x7fc2a9d248d4] in java.lang.Math::max 0.05% 0.02% [0x7fc2aa3c30d0:0x7fc2aa3c30de] in java.lang.Math::max 0.03% [0x7fc2a989b970:0x7fc2a989b970] in java.lang.Math::max 0.02% [0x7fc279d33611:0x7fc279d33611] in [unknown] ([unknown]) 0.02% [0x7fc279d3368d:0x7fc279d3368d] in [unknown] ([unknown]) 0.02% [0x7fc279d336de:0x7fc279d336de] in [unknown] ([unknown]) 0.02% [0x7fc279d3376b:0x7fc279d3376b] in [unknown] ([unknown]) 0.02% [0x7fc279d33f76:0x7fc279d33f76] in [unknown] ([unknown]) 0.02% [0x7fc279d34153:0x7fc279d34153] in [unknown] ([unknown]) 0.02% [0x7fc279d342bd:0x7fc279d342bd] in [unknown] ([unknown]) 0.02% [0x7fc279d34483:0x7fc279d34483] in [unknown] ([unknown]) 0.02% [0x7fc295021059:0x7fc295021059] in [unknown] ([unknown]) 0.02% [0x7fc29502137b:0x7fc29502137b] in [unknown] ([unknown]) 0.55% 0.60% <...other 66 warm regions...> .................................................................................................... 99.98% 100.00% ....[Hottest Methods (after inlining)].............................................................. 91.41% 92.02% org.sample.singletons.generated.SafeDCL_first_safe::first_safe_avgt_jmhStub 5.30% 5.35% 3.08% 2.60% java.lang.Math::max 0.18% 0.03% [unknown] ([unknown]) 0.02% sun.reflect.ClassFileAssembler::emitShort .................................................................................................... 99.98% 100.00% ....[Distribution by Area].......................................................................... 94.50% 94.62% 5.30% 5.35% 0.18% 0.03% .................................................................................................... 99.98% 100.00% # VM invoker: /home/shade/Install/jdk8u40/jre/bin/java # VM options: # Warmup: 5 iterations, 1 s each # Measurement: 5 iterations, 1 s each # Timeout: 10 min per iteration # Threads: 1 thread, will synchronize iterations # Benchmark mode: Average time, time/op # Benchmark: org.sample.singletons.SafeDCL.first_unsafe # Run progress: 35.71% complete, ETA 00:01:58 # Fork: 1 of 1 # Preparing profilers: perfasm # Profilers consume stdout and stderr from target VM, use -v EXTRA to copy to console # Warmup Iteration 1: 11.623 ns/op # Warmup Iteration 2: 8.462 ns/op # Warmup Iteration 3: 6.763 ns/op # Warmup Iteration 4: 6.839 ns/op # Warmup Iteration 5: 6.688 ns/op Iteration 1: 6.718 ns/op Iteration 2: 6.717 ns/op Iteration 3: 6.702 ns/op Iteration 4: 6.720 ns/op Iteration 5: 6.824 ns/op # Processing profiler results: perfasm Result: 6.736 ±(99.9%) 0.191 ns/op [Average] Statistics: (min, avg, max) = (6.702, 6.736, 6.824), stdev = 0.050 Confidence interval (99.9%): [6.545, 6.927] PrintAssembly processed: 87176 total address lines. Perf output processed (skipped 6.000 seconds): Column 1: cycles (6477 events) Column 2: instructions (6470 events) Hottest code regions (>10.00% "cycles" events): ....[Hottest Region 1].............................................................................. [0x7fb5b51d437c:0x7fb5b51d440c] in org.sample.singletons.generated.SafeDCL_first_unsafe::first_unsafe_avgt_jmhStub 0x00007fb5b51d4358: mov %r12,0x18(%r10) ;*putfield realTime ; - org.sample.singletons.generated.SafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@45 (line 186) 0x00007fb5b51d435c: add $0x40,%rsp 0x00007fb5b51d4360: pop %rbp 0x00007fb5b51d4361: test %eax,0x17ea6c99(%rip) # 0x00007fb5cd07b000 ; {poll_return} 0x00007fb5b51d4367: retq 0x00007fb5b51d4368: nopl 0x0(%rax,%rax,1) 0x00007fb5b51d4370: mov %r10,0x60(%r15) 0x00007fb5b51d4374: prefetchnta 0xc0(%r10) 0.14% 0x00007fb5b51d437c: mov 0x28(%rsp),%r10 3.46% 0x00007fb5b51d4381: mov 0xa8(%r10),%r10 0x00007fb5b51d4388: mov %r10,(%rax) 0.02% 0x00007fb5b51d438b: movl $0xf801017b,0x8(%rax) ; {metadata('org/sample/singletons/SingletonUnsafe')} 0.03% 0x00007fb5b51d4392: mov %r12d,0xc(%rax) ;*new ; - org.sample.singletons.SafeDCL$$Lambda$1/710857960::get@0 ; - org.sample.singletons.SafeDCL$SafeSingletonFactory::getInstance@20 (line 83) ; - org.sample.singletons.SafeDCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.SafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 3.64% 0x00007fb5b51d4396: mov $0x5c9e00010,%r10 ; {oop(a 'java/lang/Byte'[256] )} 0.02% 0x00007fb5b51d43a0: mov 0x2b8(%r10),%r10d ;*aaload ; - java.lang.Byte::valueOf@8 (line 103) ; - org.sample.singletons.SingletonUnsafe::<init>@7 (line 29) ; - org.sample.singletons.SafeDCL$$Lambda$1/710857960::get@4 ; - org.sample.singletons.SafeDCL$SafeSingletonFactory::getInstance@20 (line 83) ; - org.sample.singletons.SafeDCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.SafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 0x00007fb5b51d43a7: mov %r10d,0xc(%rax) 0x00007fb5b51d43ab: mov %rax,%r10 3.72% 0x00007fb5b51d43ae: shr $0x9,%r10 0.02% 0x00007fb5b51d43b2: mov $0x7fb5c5f6d000,%r11 0x00007fb5b51d43bc: mov %r12b,(%r11,%r10,1) 0.02% 0x00007fb5b51d43c0: lock addl $0x0,(%rsp) ;*getfield instance ; - org.sample.singletons.SafeDCL$SafeSingletonFactory::getInstance@42 (line 87) ; - org.sample.singletons.SafeDCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.SafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 70.91% 93.15% 0x00007fb5b51d43c5: imul $0x19660d,0xc0(%r8),%r11d 0.15% 0x00007fb5b51d43d0: add $0x3c6ef35f,%r11d ;*iadd ; - org.openjdk.jmh.infra.Blackhole::consume@10 (line 274) ; - org.sample.singletons.generated.SafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 0.02% 0x00007fb5b51d43d7: mov %r11d,0xc0(%r8) ;*putfield tlr ; - org.openjdk.jmh.infra.Blackhole::consume@12 (line 274) ; - org.sample.singletons.generated.SafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 3.83% 0x00007fb5b51d43de: test %r11d,0xc4(%r8) 0x00007fb5b51d43e5: je 0x00007fb5b51d443e ;*invokevirtual consume ; - org.sample.singletons.generated.SafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 0x00007fb5b51d43e7: movzbl 0x94(%r9),%ecx ;*getfield isDone ; - org.sample.singletons.generated.SafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@29 (line 184) 0x00007fb5b51d43ef: add $0x1,%rbp ; OopMap{r8=Oop r9=Oop [8]=Oop [16]=Oop off=499} ;*ifeq ; - org.sample.singletons.generated.SafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@32 (line 184) 0x00007fb5b51d43f3: test %eax,0x17ea6c07(%rip) # 0x00007fb5cd07b000 ; {poll} 3.74% 0x00007fb5b51d43f9: test %ecx,%ecx 0x00007fb5b51d43fb: jne 0x00007fb5b51d433e ;*getfield instance ; - org.sample.singletons.SafeDCL$SafeSingletonFactory::getInstance@12 (line 82) ; - org.sample.singletons.SafeDCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.SafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 0x00007fb5b51d4401: mov 0x60(%r15),%rax 0x00007fb5b51d4405: mov %rax,%r10 0x00007fb5b51d4408: add $0x10,%r10 3.29% 0x00007fb5b51d440c: cmp 0x70(%r15),%r10 0x00007fb5b51d4410: jb 0x00007fb5b51d4370 0x00007fb5b51d4416: mov %r8,0x18(%rsp) 0x00007fb5b51d441b: mov %r9,(%rsp) 0x00007fb5b51d441f: mov $0x7c0080bd8,%rsi ; {metadata('org/sample/singletons/SingletonUnsafe')} 0x00007fb5b51d4429: xchg %ax,%ax 0x00007fb5b51d442b: callq 0x00007fb5b5100820 ; OopMap{[0]=Oop [8]=Oop [16]=Oop [24]=Oop off=560} ;*new ; - org.sample.singletons.SafeDCL$$Lambda$1/710857960::get@0 ; - org.sample.singletons.SafeDCL$SafeSingletonFactory::getInstance@20 (line 83) ; - org.sample.singletons.SafeDCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.SafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) .................................................................................................... 92.98% 93.17% ....[Hottest Regions]............................................................................... 92.98% 93.17% [0x7fb5b51d437c:0x7fb5b51d440c] in org.sample.singletons.generated.SafeDCL_first_unsafe::first_unsafe_avgt_jmhStub 3.43% 3.74% [0x0:0x0] in 1.39% 1.14% [0x7fb5cbc9a6c0:0x7fb5cbc9a6c9] in java.lang.Math::max 0.97% [0x7fb5cc4ce845:0x7fb5cc4ce845] in java.lang.Math::max 0.54% 0.76% [0x7fb5cbecf370:0x7fb5cbecf378] in java.lang.Math::max 0.03% [0x7fb5b5020e04:0x7fb5b5020e04] in [unknown] ([unknown]) 0.03% [0x7fb5cb9aa667:0x7fb5cb9aa672] in java.lang.Math::max 0.03% 0.23% [0x7fb5cbe3c8a7:0x7fb5cbe3c909] in java.lang.Math::max 0.02% [0x7fb580379c0c:0x7fb580379c0c] in [unknown] ([unknown]) 0.02% [0x7fb58037af45:0x7fb58037af45] in [unknown] ([unknown]) 0.02% [0x7fb58037d5b3:0x7fb58037d5b3] in [unknown] ([unknown]) 0.02% [0x7fb58037db1d:0x7fb58037db1d] in [unknown] ([unknown]) 0.02% [0x7fb58037e316:0x7fb58037e316] in [unknown] ([unknown]) 0.02% [0x7fb5b500716c:0x7fb5b500716c] in [unknown] ([unknown]) 0.02% [0x7fb5b50176dc:0x7fb5b50176dc] in [unknown] ([unknown]) 0.02% [0x7fb5b50212c4:0x7fb5b50212c4] in [unknown] ([unknown]) 0.02% [0x7fb5b502165f:0x7fb5b502165f] in [unknown] ([unknown]) 0.02% [0x7fb5b51cd942:0x7fb5b51cd942] in java.io.ObjectOutputStream$BlockDataOutputStream::getUTFLength 0.02% [0x7fb5cb6e8188:0x7fb5cb6e8188] in java.lang.Math::max 0.02% [0x7fb5cb81cd2d:0x7fb5cb81cd2d] in java.lang.Math::max 0.37% 0.94% <...other 71 warm regions...> .................................................................................................... 99.95% 99.98% ....[Hottest Methods (after inlining)].............................................................. 92.98% 93.17% org.sample.singletons.generated.SafeDCL_first_unsafe::first_unsafe_avgt_jmhStub 3.43% 3.74% 3.37% 3.03% java.lang.Math::max 0.17% 0.05% [unknown] ([unknown]) 0.02% java.io.ObjectOutputStream$BlockDataOutputStream::getUTFLength .................................................................................................... 99.95% 99.98% ....[Distribution by Area].......................................................................... 96.36% 96.20% 3.43% 3.74% 0.17% 0.05% .................................................................................................... 99.95% 99.98% # VM invoker: /home/shade/Install/jdk8u40/jre/bin/java # VM options: # Warmup: 5 iterations, 1 s each # Measurement: 5 iterations, 1 s each # Timeout: 10 min per iteration # Threads: 1 thread, will synchronize iterations # Benchmark mode: Average time, time/op # Benchmark: org.sample.singletons.SafeLocalDCL.first_safe # Run progress: 42.86% complete, ETA 00:01:45 # Fork: 1 of 1 # Preparing profilers: perfasm # Profilers consume stdout and stderr from target VM, use -v EXTRA to copy to console # Warmup Iteration 1: 11.714 ns/op # Warmup Iteration 2: 8.416 ns/op # Warmup Iteration 3: 6.687 ns/op # Warmup Iteration 4: 6.723 ns/op # Warmup Iteration 5: 6.688 ns/op Iteration 1: 6.709 ns/op Iteration 2: 6.742 ns/op Iteration 3: 6.753 ns/op Iteration 4: 6.686 ns/op Iteration 5: 6.680 ns/op # Processing profiler results: perfasm Result: 6.714 ±(99.9%) 0.125 ns/op [Average] Statistics: (min, avg, max) = (6.680, 6.714, 6.753), stdev = 0.033 Confidence interval (99.9%): [6.589, 6.839] PrintAssembly processed: 84684 total address lines. Perf output processed (skipped 6.000 seconds): Column 1: cycles (6533 events) Column 2: instructions (6524 events) Hottest code regions (>10.00% "cycles" events): ....[Hottest Region 1].............................................................................. [0x7f64cd1d723c:0x7f64cd1d72cc] in org.sample.singletons.generated.SafeLocalDCL_first_safe::first_safe_avgt_jmhStub 0x00007f64cd1d721a: mov %r12,0x18(%r10) ;*putfield realTime ; - org.sample.singletons.generated.SafeLocalDCL_first_safe::first_safe_avgt_jmhStub@45 (line 186) 0x00007f64cd1d721e: add $0x40,%rsp 0x00007f64cd1d7222: pop %rbp 0x00007f64cd1d7223: test %eax,0x171fedd7(%rip) # 0x00007f64e43d6000 ; {poll_return} 0x00007f64cd1d7229: retq 0x00007f64cd1d722a: nopw 0x0(%rax,%rax,1) 0x00007f64cd1d7230: mov %r10,0x60(%r15) 0x00007f64cd1d7234: prefetchnta 0xc0(%r10) 0.05% 0x00007f64cd1d723c: mov 0x28(%rsp),%r10 3.64% 0x00007f64cd1d7241: mov 0xa8(%r10),%r10 0x00007f64cd1d7248: mov %r10,(%rax) 0.02% 0x00007f64cd1d724b: movl $0xf801017b,0x8(%rax) ; {metadata('org/sample/singletons/SingletonSafe')} 0x00007f64cd1d7252: mov %r12d,0xc(%rax) ;*new ; - org.sample.singletons.SafeLocalDCL$$Lambda$1/1382836190::get@0 ; - org.sample.singletons.SafeLocalDCL$SafeSingletonFactory::getInstance@23 (line 85) ; - org.sample.singletons.SafeLocalDCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.SafeLocalDCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) 3.31% 0x00007f64cd1d7256: mov $0x5c9e06010,%r10 ; {oop(a 'java/lang/Byte'[256] )} 0x00007f64cd1d7260: mov 0x2b8(%r10),%r10d ;*aaload ; - java.lang.Byte::valueOf@8 (line 103) ; - org.sample.singletons.SingletonSafe::<init>@7 (line 30) ; - org.sample.singletons.SafeLocalDCL$$Lambda$1/1382836190::get@4 ; - org.sample.singletons.SafeLocalDCL$SafeSingletonFactory::getInstance@23 (line 85) ; - org.sample.singletons.SafeLocalDCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.SafeLocalDCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) 0x00007f64cd1d7267: mov %r10d,0xc(%rax) 0x00007f64cd1d726b: mov %rax,%r10 3.37% 0x00007f64cd1d726e: shr $0x9,%r10 0x00007f64cd1d7272: mov $0x7f64dd2c8000,%r11 0x00007f64cd1d727c: mov %r12b,(%r11,%r10,1) 0.02% 0x00007f64cd1d7280: lock addl $0x0,(%rsp) ;*putfield instance ; - org.sample.singletons.SafeLocalDCL$SafeSingletonFactory::getInstance@34 (line 86) ; - org.sample.singletons.SafeLocalDCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.SafeLocalDCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) 71.87% 92.08% 0x00007f64cd1d7285: imul $0x19660d,0xc0(%r8),%r11d 0.09% 0x00007f64cd1d7290: add $0x3c6ef35f,%r11d ;*iadd ; - org.openjdk.jmh.infra.Blackhole::consume@10 (line 274) ; - org.sample.singletons.generated.SafeLocalDCL_first_safe::first_safe_avgt_jmhStub@19 (line 182) 0x00007f64cd1d7297: mov %r11d,0xc0(%r8) ;*putfield tlr ; - org.openjdk.jmh.infra.Blackhole::consume@12 (line 274) ; - org.sample.singletons.generated.SafeLocalDCL_first_safe::first_safe_avgt_jmhStub@19 (line 182) 2.98% 0x00007f64cd1d729e: test %r11d,0xc4(%r8) 0x00007f64cd1d72a5: je 0x00007f64cd1d72fe ;*invokevirtual consume ; - org.sample.singletons.generated.SafeLocalDCL_first_safe::first_safe_avgt_jmhStub@19 (line 182) 0.02% 0x00007f64cd1d72a7: movzbl 0x94(%r9),%ecx ;*getfield isDone ; - org.sample.singletons.generated.SafeLocalDCL_first_safe::first_safe_avgt_jmhStub@29 (line 184) 0x00007f64cd1d72af: add $0x1,%rbp ; OopMap{r8=Oop r9=Oop [8]=Oop [16]=Oop off=499} ;*ifeq ; - org.sample.singletons.generated.SafeLocalDCL_first_safe::first_safe_avgt_jmhStub@32 (line 184) 0x00007f64cd1d72b3: test %eax,0x171fed47(%rip) # 0x00007f64e43d6000 ; {poll} 2.88% 0x00007f64cd1d72b9: test %ecx,%ecx 0x00007f64cd1d72bb: jne 0x00007f64cd1d7200 ;*getfield instance ; - org.sample.singletons.SafeLocalDCL$SafeSingletonFactory::getInstance@14 (line 83) ; - org.sample.singletons.SafeLocalDCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.SafeLocalDCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) 0x00007f64cd1d72c1: mov 0x60(%r15),%rax 0x00007f64cd1d72c5: mov %rax,%r10 0x00007f64cd1d72c8: add $0x10,%r10 3.64% 0x00007f64cd1d72cc: cmp 0x70(%r15),%r10 0x00007f64cd1d72d0: jb 0x00007f64cd1d7230 0x00007f64cd1d72d6: mov %r8,0x18(%rsp) 0x00007f64cd1d72db: mov %r9,(%rsp) 0x00007f64cd1d72df: mov $0x7c0080bd8,%rsi ; {metadata('org/sample/singletons/SingletonSafe')} 0x00007f64cd1d72e9: xchg %ax,%ax 0x00007f64cd1d72eb: callq 0x00007f64cd100ca0 ; OopMap{[0]=Oop [8]=Oop [16]=Oop [24]=Oop off=560} ;*new ; - org.sample.singletons.SafeLocalDCL$$Lambda$1/1382836190::get@0 ; - org.sample.singletons.SafeLocalDCL$SafeSingletonFactory::getInstance@23 (line 85) ; - org.sample.singletons.SafeLocalDCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.SafeLocalDCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) .................................................................................................... 91.87% 92.08% ....[Hottest Regions]............................................................................... 91.87% 92.08% [0x7f64cd1d723c:0x7f64cd1d72cc] in org.sample.singletons.generated.SafeLocalDCL_first_safe::first_safe_avgt_jmhStub 5.57% 5.59% [0x0:0x0] in 1.24% 0.86% [0x7f64e2ff56c0:0x7f64e2ff56c9] in SpinPause (libjvm.so) 0.49% 0.71% [0x7f64e322a360:0x7f64e322a37d] in _ZN22ParallelTaskTerminator17offer_terminationEP20TerminatorTerminator (libjvm.so) 0.06% 0.02% [0x7f64e321c25b:0x7f64e321c265] in _ZN11StringTable17unlink_or_oops_doEP17BoolObjectClosureP10OopClosurePiS4_ (libjvm.so) 0.03% [0x7f64e2e47e98:0x7f64e2e47e9c] in _ZNK13InstanceKlass22uncached_lookup_methodEP6SymbolS1_N5Klass16MethodLookupModeE (libjvm.so) 0.03% 0.02% [0x7f64e30d68d0:0x7f64e30d68f5] in _ZN7Monitor6unlockEv (libjvm.so) 0.03% [0x7f64e3181406:0x7f64e3181406] in _ZN22PSScavengeKlassClosure8do_klassEP5Klass (libjvm.so) 0.03% 0.02% [0x7f64e31978a3:0x7f64e31978d1] in _ZN13RelocIterator10initializeEP7nmethodPhS2_ (libjvm.so) 0.02% [0x7f64b31475e2:0x7f64b31475e2] in [unknown] ([unknown]) 0.02% [0x7f64b31479a8:0x7f64b31479a8] in [unknown] ([unknown]) 0.02% [0x7f64b31480f4:0x7f64b31480f4] in [unknown] ([unknown]) 0.02% [0x7f64cd007991:0x7f64cd007991] in [unknown] ([unknown]) 0.02% [0x7f64cd01e664:0x7f64cd01e664] in [unknown] ([unknown]) 0.02% [0x7f64cd0217e0:0x7f64cd0217e0] in [unknown] ([unknown]) 0.02% [0x7f64cd024e80:0x7f64cd024e80] in [unknown] ([unknown]) 0.02% [0x7f64e2be2e98:0x7f64e2be2e98] in _ZN10LinearScan14assign_reg_numEP10LIR_OpListP14IntervalWalker (libjvm.so) 0.02% [0x7f64e2c95580:0x7f64e2c95580] in _ZNK8CodeBlob9is_zombieEv (libjvm.so) 0.02% [0x7f64e2cc10e5:0x7f64e2cc10e5] in _ZN13CompileBroker23compilation_is_completeE12methodHandleii (libjvm.so) 0.02% [0x7f64e2cc49dc:0x7f64e2cc49dc] in _ZN13CompileBroker18collect_statisticsEP14CompilerThread12elapsedTimerP11CompileTask (libjvm.so) 0.43% 0.72% <...other 59 warm regions...> .................................................................................................... 99.95% 100.00% ....[Hottest Methods (after inlining)].............................................................. 91.87% 92.08% org.sample.singletons.generated.SafeLocalDCL_first_safe::first_safe_avgt_jmhStub 5.57% 5.59% 1.24% 0.86% SpinPause (libjvm.so) 0.49% 0.71% _ZN22ParallelTaskTerminator17offer_terminationEP20TerminatorTerminator (libjvm.so) 0.11% 0.08% [unknown] ([unknown]) 0.09% 0.09% _ZN11StringTable17unlink_or_oops_doEP17BoolObjectClosureP10OopClosurePiS4_ (libjvm.so) 0.03% 0.02% _IO_fwrite (libc-2.19.so) 0.03% _ZN22PSScavengeKlassClosure8do_klassEP5Klass (libjvm.so) 0.03% 0.02% _ZN13RelocIterator10initializeEP7nmethodPhS2_ (libjvm.so) 0.03% 0.02% _ZN7Monitor6unlockEv (libjvm.so) 0.03% 0.03% strlen (libc-2.19.so) 0.03% _ZNK13InstanceKlass22uncached_lookup_methodEP6SymbolS1_N5Klass16MethodLookupModeE (libjvm.so) 0.02% _ZN5frame19oops_interpreted_doEP10OopClosureP10CLDClosurePK11RegisterMapb (libjvm.so) 0.02% _ZN7Monitor28lock_without_safepoint_checkEv (libjvm.so) 0.02% _ZN12LinkResolver22resolve_interface_callER8CallInfo6Handle11KlassHandleS3_P6SymbolS5_S3_bbP6Thread (libjvm.so) 0.02% _IO_file_sync@@GLIBC_2.2.5 (libc-2.19.so) 0.02% _ZN12LinkResolver21resolve_invokevirtualER8CallInfo6Handle18constantPoolHandleiP6Thread (libjvm.so) 0.02% 0.08% _ZN10fileStream5writeEPKcm (libjvm.so) 0.02% 0.02% _ZN7Monitor5ILockEP6Thread (libjvm.so) 0.02% 0.02% __memmove_ssse3_back (libc-2.19.so) 0.28% 0.03% <...other 18 warm methods...> .................................................................................................... 99.95% 99.62% ....[Distribution by Area].......................................................................... 91.87% 92.08% 5.57% 5.59% 2.25% 2.10% 0.14% 0.15% 0.11% 0.08% 0.02% .................................................................................................... 99.95% 100.00% # VM invoker: /home/shade/Install/jdk8u40/jre/bin/java # VM options: # Warmup: 5 iterations, 1 s each # Measurement: 5 iterations, 1 s each # Timeout: 10 min per iteration # Threads: 1 thread, will synchronize iterations # Benchmark mode: Average time, time/op # Benchmark: org.sample.singletons.SafeLocalDCL.first_unsafe # Run progress: 50.00% complete, ETA 00:01:31 # Fork: 1 of 1 # Preparing profilers: perfasm # Profilers consume stdout and stderr from target VM, use -v EXTRA to copy to console # Warmup Iteration 1: 12.001 ns/op # Warmup Iteration 2: 8.400 ns/op # Warmup Iteration 3: 6.722 ns/op # Warmup Iteration 4: 6.746 ns/op # Warmup Iteration 5: 6.733 ns/op Iteration 1: 6.768 ns/op Iteration 2: 6.709 ns/op Iteration 3: 6.772 ns/op Iteration 4: 6.758 ns/op Iteration 5: 6.700 ns/op # Processing profiler results: perfasm Result: 6.741 ±(99.9%) 0.131 ns/op [Average] Statistics: (min, avg, max) = (6.700, 6.741, 6.772), stdev = 0.034 Confidence interval (99.9%): [6.610, 6.873] PrintAssembly processed: 70958 total address lines. Perf output processed (skipped 6.000 seconds): Column 1: cycles (6568 events) Column 2: instructions (6544 events) Hottest code regions (>10.00% "cycles" events): ....[Hottest Region 1].............................................................................. [0x7f5744533930:0x7f57445339cc] in org.sample.singletons.generated.SafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub 0x00007f5744533916: mov %rax,0x28(%r10) ;*putfield stopTime ; - org.sample.singletons.generated.SafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@39 (line 185) 0x00007f574453391a: mov %r12,0x18(%r10) ;*putfield realTime ; - org.sample.singletons.generated.SafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@45 (line 186) 0x00007f574453391e: add $0x40,%rsp 0x00007f5744533922: pop %rbp 0x00007f5744533923: test %eax,0x15e2d6d7(%rip) # 0x00007f575a361000 ; {poll_return} 0x00007f5744533929: retq 0x00007f574453392a: nopw 0x0(%rax,%rax,1) 0.05% 0x00007f5744533930: mov %r10,0x60(%r15) 0x00007f5744533934: prefetchnta 0xc0(%r10) 0.12% 0x00007f574453393c: mov 0x28(%rsp),%r10 3.06% 0x00007f5744533941: mov 0xa8(%r10),%r10 0x00007f5744533948: mov %r10,(%rax) 0x00007f574453394b: movl $0xf801017b,0x8(%rax) ; {metadata('org/sample/singletons/SingletonUnsafe')} 0.02% 0x00007f5744533952: mov %r12d,0xc(%rax) ;*new ; - org.sample.singletons.SafeLocalDCL$$Lambda$1/774662960::get@0 ; - org.sample.singletons.SafeLocalDCL$SafeSingletonFactory::getInstance@23 (line 85) ; - org.sample.singletons.SafeLocalDCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.SafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 3.30% 0.02% 0x00007f5744533956: mov $0x5c9e00010,%r10 ; {oop(a 'java/lang/Byte'[256] )} 0.03% 0x00007f5744533960: mov 0x2b8(%r10),%r10d ;*aaload ; - java.lang.Byte::valueOf@8 (line 103) ; - org.sample.singletons.SingletonUnsafe::<init>@7 (line 29) ; - org.sample.singletons.SafeLocalDCL$$Lambda$1/774662960::get@4 ; - org.sample.singletons.SafeLocalDCL$SafeSingletonFactory::getInstance@23 (line 85) ; - org.sample.singletons.SafeLocalDCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.SafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 0.02% 0x00007f5744533967: mov %r10d,0xc(%rax) 0x00007f574453396b: mov %rax,%r10 3.30% 0x00007f574453396e: shr $0x9,%r10 0x00007f5744533972: mov $0x7f57401bc000,%r11 0x00007f574453397c: mov %r12b,(%r11,%r10,1) 0x00007f5744533980: lock addl $0x0,(%rsp) ;*putfield instance ; - org.sample.singletons.SafeLocalDCL$SafeSingletonFactory::getInstance@34 (line 86) ; - org.sample.singletons.SafeLocalDCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.SafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 72.14% 93.49% 0x00007f5744533985: imul $0x19660d,0xc0(%r8),%r11d 0.06% 0x00007f5744533990: add $0x3c6ef35f,%r11d ;*iadd ; - org.openjdk.jmh.infra.Blackhole::consume@10 (line 274) ; - org.sample.singletons.generated.SafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 0x00007f5744533997: mov %r11d,0xc0(%r8) ;*putfield tlr ; - org.openjdk.jmh.infra.Blackhole::consume@12 (line 274) ; - org.sample.singletons.generated.SafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 3.85% 0.02% 0x00007f574453399e: test %r11d,0xc4(%r8) 0x00007f57445339a5: je 0x00007f57445339fe ;*invokevirtual consume ; - org.sample.singletons.generated.SafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 0x00007f57445339a7: movzbl 0x94(%r9),%ecx ;*getfield isDone ; - org.sample.singletons.generated.SafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@29 (line 184) 0.02% 0x00007f57445339af: add $0x1,%rbp ; OopMap{r8=Oop r9=Oop [8]=Oop [16]=Oop off=499} ;*ifeq ; - org.sample.singletons.generated.SafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@32 (line 184) 0x00007f57445339b3: test %eax,0x15e2d647(%rip) # 0x00007f575a361000 ; {poll} 3.58% 0x00007f57445339b9: test %ecx,%ecx 0x00007f57445339bb: jne 0x00007f5744533900 ;*getfield instance ; - org.sample.singletons.SafeLocalDCL$SafeSingletonFactory::getInstance@14 (line 83) ; - org.sample.singletons.SafeLocalDCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.SafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 0.02% 0x00007f57445339c1: mov 0x60(%r15),%rax 0x00007f57445339c5: mov %rax,%r10 0x00007f57445339c8: add $0x10,%r10 3.56% 0x00007f57445339cc: cmp 0x70(%r15),%r10 0x00007f57445339d0: jb 0x00007f5744533930 0x00007f57445339d6: mov %r8,0x18(%rsp) 0x00007f57445339db: mov %r9,(%rsp) 0x00007f57445339df: mov $0x7c0080bd8,%rsi ; {metadata('org/sample/singletons/SingletonUnsafe')} 0x00007f57445339e9: xchg %ax,%ax 0x00007f57445339eb: callq 0x00007f574447da60 ; OopMap{[0]=Oop [8]=Oop [16]=Oop [24]=Oop off=560} ;*new ; - org.sample.singletons.SafeLocalDCL$$Lambda$1/774662960::get@0 ; - org.sample.singletons.SafeLocalDCL$SafeSingletonFactory::getInstance@23 (line 85) ; - org.sample.singletons.SafeLocalDCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.SafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) .................................................................................................... 93.12% 93.52% ....[Hottest Regions]............................................................................... 93.12% 93.52% [0x7f5744533930:0x7f57445339cc] in org.sample.singletons.generated.SafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub 3.71% 3.76% [0x0:0x0] in 1.72% 1.16% [0x7f5758f806c0:0x7f5758f806c9] in SpinPause (libjvm.so) 0.73% 1.04% [0x7f57591b5370:0x7f57591b5378] in _ZN22ParallelTaskTerminator17offer_terminationEP20TerminatorTerminator (libjvm.so) 0.05% 0.02% [0x7f57591a7258:0x7f57591a725b] in _ZN11StringTable17unlink_or_oops_doEP17BoolObjectClosureP10OopClosurePiS4_ (libjvm.so) 0.03% [0x7f57211416de:0x7f57211416e1] in [unknown] ([unknown]) 0.03% [0x7f57590609e8:0x7f57590609e8] in _ZN7Monitor5ILockEP6Thread (libjvm.so) 0.03% 0.03% [0x7f57590af1a0:0x7f57590af1ae] in _ZN10fileStream5writeEPKcm (libjvm.so) 0.03% [0x7f57597cc916:0x7f57597cc926] in __strchr_sse2 (libc-2.19.so) 0.03% 0.02% [0x7f5759f3335d:0x7f5759f3335d] in [unknown] (libpthread-2.19.so) 0.02% [0x7f574439e10d:0x7f574439e10d] in [unknown] ([unknown]) 0.02% [0x7f5758afd3d0:0x7f5758afd3d0] in _ZN11Instruction13as_StateSplitEv (libjvm.so) 0.02% [0x7f5758b1f008:0x7f5758b1f008] in _ZN10ValueStack4pushEP9ValueTypeP11Instruction (libjvm.so) 0.02% [0x7f5758b6da01:0x7f5758b6da01] in _ZN10LinearScan14assign_reg_numEP10LIR_OpListP14IntervalWalker (libjvm.so) 0.02% [0x7f5758ba7cd7:0x7f5758ba7cd7] in _ZN18CardTableExtension26scavenge_contents_parallelEP16ObjectStartArrayP12MutableSpaceP8HeapWordP18PSPromotionManagerjj (libjvm.so) 0.02% [0x7f5758bc9943:0x7f5758bc9943] in _ZN15ciInstanceKlass12is_interfaceEv (libjvm.so) 0.02% [0x7f5758c5b090:0x7f5758c5b090] in _ZN20CompressedReadStream11read_int_mbEi (libjvm.so) 0.02% [0x7f5758dcd547:0x7f5758dcd547] in _ZNK13InstanceKlass13vtable_lengthEv (libjvm.so) 0.02% [0x7f57590613b9:0x7f57590613b9] in _ZN7Monitor5IWaitEP6Threadl (libjvm.so) 0.02% [0x7f57590618f5:0x7f57590618f5] in _ZN7Monitor6unlockEv (libjvm.so) 0.35% 0.46% <...other 47 warm regions...> .................................................................................................... 99.98% 100.00% ....[Hottest Methods (after inlining)].............................................................. 93.12% 93.52% org.sample.singletons.generated.SafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub 3.71% 3.76% 1.72% 1.16% SpinPause (libjvm.so) 0.73% 1.04% _ZN22ParallelTaskTerminator17offer_terminationEP20TerminatorTerminator (libjvm.so) 0.05% 0.05% _ZN11StringTable17unlink_or_oops_doEP17BoolObjectClosureP10OopClosurePiS4_ (libjvm.so) 0.05% 0.02% [unknown] ([unknown]) 0.03% 0.02% [unknown] (libpthread-2.19.so) 0.03% 0.05% _ZN10fileStream5writeEPKcm (libjvm.so) 0.03% _ZN7Monitor5ILockEP6Thread (libjvm.so) 0.03% 0.02% __strcpy_sse2_unaligned (libc-2.19.so) 0.03% __strchr_sse2 (libc-2.19.so) 0.02% _IO_fwrite (libc-2.19.so) 0.02% _ZN15ciInstanceKlass12is_interfaceEv (libjvm.so) 0.02% _ZN10ValueStack4pushEP9ValueTypeP11Instruction (libjvm.so) 0.02% pthread_mutex_lock (libpthread-2.19.so) 0.02% _ZN11Instruction13as_StateSplitEv (libjvm.so) 0.02% _ZN7nmethod21cleanup_inline_cachesEv (libjvm.so) 0.02% _ZN13ObjectMonitor5enterEP6Thread (libjvm.so) 0.02% _ZN2os13javaTimeNanosEv (libjvm.so) 0.02% 0.02% _ZN22PSScavengeKlassClosure8do_klassEP5Klass (libjvm.so) 0.32% 0.05% <...other 21 warm methods...> .................................................................................................... 99.98% 99.68% ....[Distribution by Area].......................................................................... 93.12% 93.54% 3.71% 3.76% 2.89% 2.54% 0.14% 0.12% 0.08% 0.03% 0.05% 0.02% .................................................................................................... 99.98% 100.00% # VM invoker: /home/shade/Install/jdk8u40/jre/bin/java # VM options: # Warmup: 5 iterations, 1 s each # Measurement: 5 iterations, 1 s each # Timeout: 10 min per iteration # Threads: 1 thread, will synchronize iterations # Benchmark mode: Average time, time/op # Benchmark: org.sample.singletons.SynchronizedCL.first_safe # Run progress: 57.14% complete, ETA 00:01:18 # Fork: 1 of 1 # Preparing profilers: perfasm # Profilers consume stdout and stderr from target VM, use -v EXTRA to copy to console # Warmup Iteration 1: 3.897 ns/op # Warmup Iteration 2: 2.993 ns/op # Warmup Iteration 3: 2.328 ns/op # Warmup Iteration 4: 2.393 ns/op # Warmup Iteration 5: 2.325 ns/op Iteration 1: 2.365 ns/op Iteration 2: 2.343 ns/op Iteration 3: 2.349 ns/op Iteration 4: 2.361 ns/op Iteration 5: 2.366 ns/op # Processing profiler results: perfasm Result: 2.357 ±(99.9%) 0.039 ns/op [Average] Statistics: (min, avg, max) = (2.343, 2.357, 2.366), stdev = 0.010 Confidence interval (99.9%): [2.318, 2.396] PrintAssembly processed: 82327 total address lines. Perf output processed (skipped 6.000 seconds): Column 1: cycles (6755 events) Column 2: instructions (6766 events) Hottest code regions (>10.00% "cycles" events): ....[Hottest Region 1].............................................................................. [0x7feb251bfb30:0x7feb251bfbc7] in org.sample.singletons.generated.SynchronizedCL_first_safe::first_safe_avgt_jmhStub 0x00007feb251bfb11: mov %rax,0x28(%r10) ;*putfield stopTime ; - org.sample.singletons.generated.SynchronizedCL_first_safe::first_safe_avgt_jmhStub@39 (line 185) 0x00007feb251bfb15: mov %r12,0x18(%r10) ;*putfield realTime ; - org.sample.singletons.generated.SynchronizedCL_first_safe::first_safe_avgt_jmhStub@45 (line 186) 0x00007feb251bfb19: add $0x40,%rsp 0x00007feb251bfb1d: pop %rbp 0x00007feb251bfb1e: test %eax,0x187194dc(%rip) # 0x00007feb3d8d9000 ; {poll_return} 0x00007feb251bfb24: retq 0x00007feb251bfb25: nopw 0x0(%rax,%rax,1) 0.30% 0.24% 0x00007feb251bfb30: mov %r10,0x60(%r15) 0.03% 0.10% 0x00007feb251bfb34: prefetchnta 0xc0(%r10) 0.25% 0.19% 0x00007feb251bfb3c: mov 0x28(%rsp),%r10 8.94% 11.54% 0x00007feb251bfb41: mov 0xa8(%r10),%r10 0.19% 0.21% 0x00007feb251bfb48: mov %r10,(%rax) 0.89% 0.47% 0x00007feb251bfb4b: movl $0xf801017b,0x8(%rax) ; {metadata('org/sample/singletons/SingletonSafe')} 0.13% 0.13% 0x00007feb251bfb52: mov %r12d,0xc(%rax) ;*new ; - org.sample.singletons.SynchronizedCL$$Lambda$1/710857960::get@0 ; - org.sample.singletons.SynchronizedCL$SafeSingletonFactory::getInstance@13 (line 82) ; - org.sample.singletons.SynchronizedCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.SynchronizedCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) 9.74% 11.97% 0x00007feb251bfb56: mov $0x719433ee8,%r10 ; {oop(a 'java/lang/Byte'[256] )} 0.06% 0.10% 0x00007feb251bfb60: mov 0x2b8(%r10),%r11d ;*aaload ; - java.lang.Byte::valueOf@8 (line 103) ; - org.sample.singletons.SingletonSafe::<init>@7 (line 30) ; - org.sample.singletons.SynchronizedCL$$Lambda$1/710857960::get@4 ; - org.sample.singletons.SynchronizedCL$SafeSingletonFactory::getInstance@13 (line 82) ; - org.sample.singletons.SynchronizedCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.SynchronizedCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) 0.40% 0.13% 0x00007feb251bfb67: mov %r11d,0xc(%rax) 0.19% 0.16% 0x00007feb251bfb6b: mov %rax,%r10 9.02% 10.74% 0x00007feb251bfb6e: shr $0x9,%r10 0.06% 0.04% 0x00007feb251bfb72: mov $0x7feb367cb000,%r11 0.21% 0.19% 0x00007feb251bfb7c: mov %r12b,(%r11,%r10,1) ;*synchronization entry ; - org.sample.singletons.SynchronizedCL$$Lambda$1/710857960::get@-1 ; - org.sample.singletons.SynchronizedCL$SafeSingletonFactory::getInstance@13 (line 82) ; - org.sample.singletons.SynchronizedCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.SynchronizedCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) 0.16% 0.15% 0x00007feb251bfb80: imul $0x19660d,0xc0(%r8),%r11d 18.37% 3.64% 0x00007feb251bfb8b: add $0x3c6ef35f,%r11d ;*iadd ; - org.openjdk.jmh.infra.Blackhole::consume@10 (line 274) ; - org.sample.singletons.generated.SynchronizedCL_first_safe::first_safe_avgt_jmhStub@19 (line 182) 9.62% 3.72% 0x00007feb251bfb92: mov %r11d,0xc0(%r8) ;*putfield tlr ; - org.openjdk.jmh.infra.Blackhole::consume@12 (line 274) ; - org.sample.singletons.generated.SynchronizedCL_first_safe::first_safe_avgt_jmhStub@19 (line 182) 9.40% 15.08% 0x00007feb251bfb99: test %r11d,0xc4(%r8) 0x00007feb251bfba0: je 0x00007feb251bfbfa ;*invokevirtual consume ; - org.sample.singletons.generated.SynchronizedCL_first_safe::first_safe_avgt_jmhStub@19 (line 182) 0.15% 0.10% 0x00007feb251bfba2: movzbl 0x94(%r9),%ecx ;*getfield isDone ; - org.sample.singletons.generated.SynchronizedCL_first_safe::first_safe_avgt_jmhStub@29 (line 184) 0.25% 0.18% 0x00007feb251bfbaa: add $0x1,%rbp ; OopMap{r8=Oop r9=Oop [8]=Oop [16]=Oop off=494} ;*ifeq ; - org.sample.singletons.generated.SynchronizedCL_first_safe::first_safe_avgt_jmhStub@32 (line 184) 0.04% 0x00007feb251bfbae: test %eax,0x1871944c(%rip) # 0x00007feb3d8d9000 ; {poll} 10.23% 14.09% 0x00007feb251bfbb4: test %ecx,%ecx 0x00007feb251bfbb6: jne 0x00007feb251bfafb ;*aload ; - org.sample.singletons.generated.SynchronizedCL_first_safe::first_safe_avgt_jmhStub@13 (line 182) 0.27% 0.10% 0x00007feb251bfbbc: mov 0x60(%r15),%rax 0.15% 0.10% 0x00007feb251bfbc0: mov %rax,%r10 0.10% 0.01% 0x00007feb251bfbc3: add $0x10,%r10 9.87% 15.62% 0x00007feb251bfbc7: cmp 0x70(%r15),%r10 0x00007feb251bfbcb: jb 0x00007feb251bfb30 0x00007feb251bfbd1: mov %r8,0x18(%rsp) 0x00007feb251bfbd6: mov %r9,(%rsp) ;*synchronization entry ; - org.sample.singletons.SynchronizedCL$SafeSingletonFactory::getInstance@-1 (line 80) ; - org.sample.singletons.SynchronizedCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.SynchronizedCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) 0x00007feb251bfbda: mov $0x7c0080bd8,%rsi ; {metadata('org/sample/singletons/SingletonSafe')} 0x00007feb251bfbe4: xchg %ax,%ax 0x00007feb251bfbe7: callq 0x00007feb25100ca0 ; OopMap{[0]=Oop [8]=Oop [16]=Oop [24]=Oop off=556} ;*new ; - org.sample.singletons.SynchronizedCL$$Lambda$1/710857960::get@0 .................................................................................................... 89.03% 89.03% ....[Hottest Regions]............................................................................... 89.03% 89.03% [0x7feb251bfb30:0x7feb251bfbc7] in org.sample.singletons.generated.SynchronizedCL_first_safe::first_safe_avgt_jmhStub 6.62% 6.44% [0x0:0x0] in 2.62% 1.73% [0x7feb3c4f86c0:0x7feb3c4f86c9] in SpinPause (libjvm.so) 0.93% 1.95% [0x7feb3c72d370:0x7feb3c72d37d] in _ZN22ParallelTaskTerminator17offer_terminationEP20TerminatorTerminator (libjvm.so) 0.04% 0.01% [0x7feb3c6271ae:0x7feb3c6271ae] in _ZN10fileStream5writeEPKcm (libjvm.so) 0.03% [0x7feb3c18849b:0x7feb3c18849b] in java.lang.Math::max 0.03% 0.03% [0x7feb3c69a8f9:0x7feb3c69a909] in _ZN13RelocIterator10initializeEP7nmethodPhS2_ (libjvm.so) 0.03% 0.04% [0x7feb3c7ccad0:0x7feb3c7ccaea] in _ZN13xmlTextStream5writeEPKcm (libjvm.so) 0.03% [0x7feb3d4a8414:0x7feb3d4a8417] in pthread_cond_wait@@GLIBC_2.3.2 (libpthread-2.19.so) 0.01% [0x7feb0465e4b0:0x7feb0465e4b0] in [unknown] ([unknown]) 0.01% [0x7feb0465f779:0x7feb0465f779] in [unknown] ([unknown]) 0.01% [0x7feb046e42d6:0x7feb046e42d6] in [unknown] ([unknown]) 0.01% [0x7feb25018000:0x7feb25018000] in [unknown] ([unknown]) 0.01% [0x7feb25020502:0x7feb25020502] in [unknown] ([unknown]) 0.01% [0x7feb3c06a448:0x7feb3c06a448] in java.lang.Math::max 0.01% [0x7feb3c098f02:0x7feb3c098f02] in java.lang.Math::max 0.01% [0x7feb3c0a2a60:0x7feb3c0a2a60] in java.lang.Math::max 0.01% [0x7feb3c11fc06:0x7feb3c11fc06] in java.lang.Math::max 0.01% [0x7feb3c150cc0:0x7feb3c150cc0] in java.lang.Math::max 0.01% [0x7feb3c226220:0x7feb3c226220] in java.lang.Math::max 0.41% 0.75% <...other 68 warm regions...> .................................................................................................... 99.94% 100.00% ....[Hottest Methods (after inlining)].............................................................. 89.03% 89.03% org.sample.singletons.generated.SynchronizedCL_first_safe::first_safe_avgt_jmhStub 6.62% 6.44% 2.62% 1.73% SpinPause (libjvm.so) 0.93% 1.98% _ZN22ParallelTaskTerminator17offer_terminationEP20TerminatorTerminator (libjvm.so) 0.16% 0.21% java.lang.Math::max 0.07% 0.07% [unknown] ([unknown]) 0.04% 0.01% _ZN10fileStream5writeEPKcm (libjvm.so) 0.04% 0.09% _ZN13RelocIterator10initializeEP7nmethodPhS2_ (libjvm.so) 0.04% vfprintf (libc-2.19.so) 0.04% 0.04% _ZN13xmlTextStream5writeEPKcm (libjvm.so) 0.03% pthread_cond_wait@@GLIBC_2.3.2 (libpthread-2.19.so) 0.01% 0.01% _IO_fwrite (libc-2.19.so) 0.01% _ZN14PSPromotionLAB10initializeE9MemRegion (libjvm.so) 0.01% 0.04% _ZN11StringTable17unlink_or_oops_doEP17BoolObjectClosureP10OopClosurePiS4_ (libjvm.so) 0.01% _ZN22PSScavengeKlassClosure8do_klassEP5Klass (libjvm.so) 0.01% __memmove_ssse3_back (libc-2.19.so) 0.01% _ZN11OptoRuntime14new_instance_CEP5KlassP10JavaThread (libjvm.so) 0.01% _ZN14NMethodSweeper15process_nmethodEP7nmethod (libjvm.so) 0.01% _ZN4UTF815as_quoted_asciiEPKciPci (libjvm.so) 0.01% 0.01% _ZN7Monitor6unlockEv (libjvm.so) 0.16% 0.01% <...other 11 warm methods...> .................................................................................................... 99.94% 99.70% ....[Distribution by Area].......................................................................... 89.19% 89.24% 6.62% 6.44% 3.83% 4.09% 0.16% 0.15% 0.07% 0.07% 0.06% .................................................................................................... 99.94% 100.00% # VM invoker: /home/shade/Install/jdk8u40/jre/bin/java # VM options: # Warmup: 5 iterations, 1 s each # Measurement: 5 iterations, 1 s each # Timeout: 10 min per iteration # Threads: 1 thread, will synchronize iterations # Benchmark mode: Average time, time/op # Benchmark: org.sample.singletons.SynchronizedCL.first_unsafe # Run progress: 64.29% complete, ETA 00:01:05 # Fork: 1 of 1 # Preparing profilers: perfasm # Profilers consume stdout and stderr from target VM, use -v EXTRA to copy to console # Warmup Iteration 1: 5.152 ns/op # Warmup Iteration 2: 3.546 ns/op # Warmup Iteration 3: 2.472 ns/op # Warmup Iteration 4: 2.379 ns/op # Warmup Iteration 5: 2.363 ns/op Iteration 1: 2.352 ns/op Iteration 2: 2.339 ns/op Iteration 3: 2.359 ns/op Iteration 4: 2.341 ns/op Iteration 5: 2.436 ns/op # Processing profiler results: perfasm Result: 2.366 ±(99.9%) 0.155 ns/op [Average] Statistics: (min, avg, max) = (2.339, 2.366, 2.436), stdev = 0.040 Confidence interval (99.9%): [2.210, 2.521] PrintAssembly processed: 85802 total address lines. Perf output processed (skipped 6.000 seconds): Column 1: cycles (6723 events) Column 2: instructions (6712 events) Hottest code regions (>10.00% "cycles" events): ....[Hottest Region 1].............................................................................. [0x7f0a351cf630:0x7f0a351cf6cd] in org.sample.singletons.generated.SynchronizedCL_first_unsafe::first_unsafe_avgt_jmhStub 0x00007f0a351cf611: mov %rax,0x28(%r10) ;*putfield stopTime ; - org.sample.singletons.generated.SynchronizedCL_first_unsafe::first_unsafe_avgt_jmhStub@39 (line 185) 0x00007f0a351cf615: mov %r12,0x18(%r10) ;*putfield realTime ; - org.sample.singletons.generated.SynchronizedCL_first_unsafe::first_unsafe_avgt_jmhStub@45 (line 186) 0x00007f0a351cf619: add $0x40,%rsp 0x00007f0a351cf61d: pop %rbp 0x00007f0a351cf61e: test %eax,0x170759dc(%rip) # 0x00007f0a4c245000 ; {poll_return} 0x00007f0a351cf624: retq 0x00007f0a351cf625: nopw 0x0(%rax,%rax,1) 0.95% 1.12% 0x00007f0a351cf630: mov %r10,0x60(%r15) 0.33% 0.12% 0x00007f0a351cf634: prefetchnta 0xc0(%r10) 0.33% 0.24% 0x00007f0a351cf63c: mov 0x28(%rsp),%r10 8.64% 9.70% 0x00007f0a351cf641: mov 0xa8(%r10),%r10 1.22% 1.34% 0x00007f0a351cf648: mov %r10,(%rax) 1.04% 0.77% 0x00007f0a351cf64b: movl $0xf801017b,0x8(%rax) ; {metadata('org/sample/singletons/SingletonUnsafe')} 0.31% 0.15% 0x00007f0a351cf652: mov %r12d,0xc(%rax) ;*new ; - org.sample.singletons.SynchronizedCL$$Lambda$1/710857960::get@0 ; - org.sample.singletons.SynchronizedCL$SafeSingletonFactory::getInstance@13 (line 82) ; - org.sample.singletons.SynchronizedCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.SynchronizedCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 8.49% 9.06% 0x00007f0a351cf656: mov $0x5c9e06010,%r10 ; {oop(a 'java/lang/Byte'[256] )} 0.79% 0.09% 0x00007f0a351cf660: mov 0x2b8(%r10),%r11d ;*aaload ; - java.lang.Byte::valueOf@8 (line 103) ; - org.sample.singletons.SingletonUnsafe::<init>@7 (line 29) ; - org.sample.singletons.SynchronizedCL$$Lambda$1/710857960::get@4 ; - org.sample.singletons.SynchronizedCL$SafeSingletonFactory::getInstance@13 (line 82) ; - org.sample.singletons.SynchronizedCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.SynchronizedCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 0.36% 0.54% 0x00007f0a351cf667: mov %r11d,0xc(%rax) ;*putfield x ; - org.sample.singletons.SingletonUnsafe::<init>@10 (line 29) ; - org.sample.singletons.SynchronizedCL$$Lambda$1/710857960::get@4 ; - org.sample.singletons.SynchronizedCL$SafeSingletonFactory::getInstance@13 (line 82) ; - org.sample.singletons.SynchronizedCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.SynchronizedCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 0.27% 0.25% 0x00007f0a351cf66b: imul $0x19660d,0xc0(%r8),%r11d 18.31% 9.42% 0x00007f0a351cf676: mov 0xc4(%r8),%r10d ;*getfield tlrMask ; - org.openjdk.jmh.infra.Blackhole::consume@18 (line 275) ; - org.sample.singletons.generated.SynchronizedCL_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 0.37% 0.06% 0x00007f0a351cf67d: mov %rax,%rcx 0.31% 0.34% 0x00007f0a351cf680: add $0x3c6ef35f,%r11d ;*iadd ; - org.openjdk.jmh.infra.Blackhole::consume@10 (line 274) ; - org.sample.singletons.generated.SynchronizedCL_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 9.80% 4.13% 0x00007f0a351cf687: mov %r11d,0xc0(%r8) ;*putfield tlr ; - org.openjdk.jmh.infra.Blackhole::consume@12 (line 274) ; - org.sample.singletons.generated.SynchronizedCL_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 9.04% 10.34% 0x00007f0a351cf68e: and %r11d,%r10d 0.70% 0.80% 0x00007f0a351cf691: shr $0x9,%rcx 0.30% 0.24% 0x00007f0a351cf695: mov $0x7f0a311ff000,%r11 0.13% 0.12% 0x00007f0a351cf69f: mov %r12b,(%r11,%rcx,1) ;*putfield x ; - org.sample.singletons.SingletonUnsafe::<init>@10 (line 29) ; - org.sample.singletons.SynchronizedCL$$Lambda$1/710857960::get@4 ; - org.sample.singletons.SynchronizedCL$SafeSingletonFactory::getInstance@13 (line 82) ; - org.sample.singletons.SynchronizedCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.SynchronizedCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 8.60% 13.27% 0x00007f0a351cf6a3: test %r10d,%r10d 0x00007f0a351cf6a6: je 0x00007f0a351cf6fe ;*invokevirtual consume ; - org.sample.singletons.generated.SynchronizedCL_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 0.65% 0.97% 0x00007f0a351cf6a8: movzbl 0x94(%r9),%ebx ;*getfield isDone ; - org.sample.singletons.generated.SynchronizedCL_first_unsafe::first_unsafe_avgt_jmhStub@29 (line 184) 0.37% 0.34% 0x00007f0a351cf6b0: add $0x1,%rbp ; OopMap{r8=Oop r9=Oop [8]=Oop [16]=Oop off=500} ;*ifeq ; - org.sample.singletons.generated.SynchronizedCL_first_unsafe::first_unsafe_avgt_jmhStub@32 (line 184) 0.12% 0.09% 0x00007f0a351cf6b4: test %eax,0x17075946(%rip) # 0x00007f0a4c245000 ; {poll} 8.46% 12.68% 0x00007f0a351cf6ba: test %ebx,%ebx 0.01% 0x00007f0a351cf6bc: jne 0x00007f0a351cf5fb ;*aload ; - org.sample.singletons.generated.SynchronizedCL_first_unsafe::first_unsafe_avgt_jmhStub@13 (line 182) 0.85% 1.21% 0x00007f0a351cf6c2: mov 0x60(%r15),%rax 0.33% 0.22% 0x00007f0a351cf6c6: mov %rax,%r10 0.16% 0.16% 0x00007f0a351cf6c9: add $0x10,%r10 8.23% 12.07% 0x00007f0a351cf6cd: cmp 0x70(%r15),%r10 0x00007f0a351cf6d1: jb 0x00007f0a351cf630 0x00007f0a351cf6d7: mov %r8,0x18(%rsp) 0x00007f0a351cf6dc: mov %r9,(%rsp) ;*synchronization entry ; - org.sample.singletons.SynchronizedCL$SafeSingletonFactory::getInstance@-1 (line 80) ; - org.sample.singletons.SynchronizedCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.SynchronizedCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 0x00007f0a351cf6e0: mov $0x7c0080bd8,%rsi ; {metadata('org/sample/singletons/SingletonUnsafe')} 0x00007f0a351cf6ea: nop 0x00007f0a351cf6eb: callq 0x00007f0a35100ca0 ; OopMap{[0]=Oop [8]=Oop [16]=Oop [24]=Oop off=560} ;*new ; - org.sample.singletons.SynchronizedCL$$Lambda$1/710857960::get@0 .................................................................................................... 89.47% 89.85% ....[Hottest Regions]............................................................................... 89.47% 89.85% [0x7f0a351cf630:0x7f0a351cf6cd] in org.sample.singletons.generated.SynchronizedCL_first_unsafe::first_unsafe_avgt_jmhStub 7.32% 6.91% [0x0:0x0] in 1.40% 0.88% [0x7f0a4ae646c0:0x7f0a4ae646c9] in SpinPause (libjvm.so) 0.67% 1.10% [0x7f0a4b099370:0x7f0a4b09938a] in _ZN22ParallelTaskTerminator17offer_terminationEP20TerminatorTerminator (libjvm.so) 0.10% [0x7f0a4be1735d:0x7f0a4be1735d] in [unknown] (libpthread-2.19.so) 0.07% 0.01% [0x7f0a4b08b258:0x7f0a4b08b260] in _ZN11StringTable17unlink_or_oops_doEP17BoolObjectClosureP10OopClosurePiS4_ (libjvm.so) 0.04% 0.10% [0x7f0a4af931aa:0x7f0a4af931bd] in _ZN10fileStream5writeEPKcm (libjvm.so) 0.03% [0x7f0a4af94557:0x7f0a4af94557] in _ZN13defaultStream5writeEPKcm (libjvm.so) 0.03% 0.07% [0x7f0a4b0068b9:0x7f0a4b0068d4] in _ZN13RelocIterator10initializeEP7nmethodPhS2_ (libjvm.so) 0.03% [0x7f0a4b01786b:0x7f0a4b01786b] in _ZN11OptoRuntime14new_instance_CEP5KlassP10JavaThread (libjvm.so) 0.03% [0x7f0a4b6b256a:0x7f0a4b6b256f] in strlen (libc-2.19.so) 0.03% [0x7f0a4be14414:0x7f0a4be14414] in pthread_cond_wait@@GLIBC_2.3.2 (libpthread-2.19.so) 0.03% 0.01% [0x7f0a4be16e3f:0x7f0a4be16e3f] in __pthread_enable_asynccancel (libpthread-2.19.so) 0.01% [0x7f0a22b379f0:0x7f0a22b379f0] in [unknown] ([unknown]) 0.01% [0x7f0a23046692:0x7f0a23046692] in [unknown] ([unknown]) 0.01% [0x7f0a23046a62:0x7f0a23046a62] in [unknown] ([unknown]) 0.01% [0x7f0a230472e4:0x7f0a230472e4] in [unknown] ([unknown]) 0.01% [0x7f0a3500006e:0x7f0a3500006e] in [unknown] ([unknown]) 0.01% [0x7f0a350109da:0x7f0a350109da] in [unknown] ([unknown]) 0.01% [0x7f0a35020ef5:0x7f0a35020ef5] in [unknown] ([unknown]) 0.64% 1.03% <...other 93 warm regions...> .................................................................................................... 100.00% 99.99% ....[Hottest Methods (after inlining)].............................................................. 89.47% 89.85% org.sample.singletons.generated.SynchronizedCL_first_unsafe::first_unsafe_avgt_jmhStub 7.32% 6.91% 1.40% 0.88% SpinPause (libjvm.so) 0.67% 1.10% _ZN22ParallelTaskTerminator17offer_terminationEP20TerminatorTerminator (libjvm.so) 0.13% 0.06% [unknown] ([unknown]) 0.10% [unknown] (libpthread-2.19.so) 0.07% 0.06% _ZN11StringTable17unlink_or_oops_doEP17BoolObjectClosureP10OopClosurePiS4_ (libjvm.so) 0.06% 0.12% _ZN10fileStream5writeEPKcm (libjvm.so) 0.03% _ZN13CollectedHeap23allocate_from_tlab_slowE11KlassHandleP6Threadm (libjvm.so) 0.03% _ZN7Monitor6unlockEv (libjvm.so) 0.03% 0.01% __pthread_enable_asynccancel (libpthread-2.19.so) 0.03% 0.13% _ZN13RelocIterator10initializeEP7nmethodPhS2_ (libjvm.so) 0.03% _ZN13defaultStream5writeEPKcm (libjvm.so) 0.03% _ZN11OptoRuntime14new_instance_CEP5KlassP10JavaThread (libjvm.so) 0.03% strlen (libc-2.19.so) 0.03% pthread_cond_wait@@GLIBC_2.3.2 (libpthread-2.19.so) 0.01% 0.03% _ZN7Monitor5ILockEP6Thread (libjvm.so) 0.01% _IO_vsnprintf (libc-2.19.so) 0.01% __strchrnul (libc-2.19.so) 0.01% _ZN16UseCountComputer5visitEPP11Instruction (libjvm.so) 0.48% 0.13% <...other 32 warm methods...> .................................................................................................... 100.00% 99.30% ....[Distribution by Area].......................................................................... 89.47% 89.85% 7.32% 6.91% 2.72% 2.70% 0.19% 0.07% 0.16% 0.39% 0.13% 0.06% .................................................................................................... 100.00% 99.99% # VM invoker: /home/shade/Install/jdk8u40/jre/bin/java # VM options: # Warmup: 5 iterations, 1 s each # Measurement: 5 iterations, 1 s each # Timeout: 10 min per iteration # Threads: 1 thread, will synchronize iterations # Benchmark mode: Average time, time/op # Benchmark: org.sample.singletons.UnsafeDCL.first_safe # Run progress: 71.43% complete, ETA 00:00:52 # Fork: 1 of 1 # Preparing profilers: perfasm # Profilers consume stdout and stderr from target VM, use -v EXTRA to copy to console # Warmup Iteration 1: 3.604 ns/op # Warmup Iteration 2: 2.584 ns/op # Warmup Iteration 3: 2.323 ns/op # Warmup Iteration 4: 2.327 ns/op # Warmup Iteration 5: 2.361 ns/op Iteration 1: 2.338 ns/op Iteration 2: 2.345 ns/op Iteration 3: 2.346 ns/op Iteration 4: 2.344 ns/op Iteration 5: 2.355 ns/op # Processing profiler results: perfasm Result: 2.346 ±(99.9%) 0.023 ns/op [Average] Statistics: (min, avg, max) = (2.338, 2.346, 2.355), stdev = 0.006 Confidence interval (99.9%): [2.322, 2.369] PrintAssembly processed: 82101 total address lines. Perf output processed (skipped 6.000 seconds): Column 1: cycles (6517 events) Column 2: instructions (6577 events) Hottest code regions (>10.00% "cycles" events): ....[Hottest Region 1].............................................................................. [0x7fab591cee30:0x7fab591ceec7] in org.sample.singletons.generated.UnsafeDCL_first_safe::first_safe_avgt_jmhStub 0x00007fab591cee11: mov %rax,0x28(%r10) ;*putfield stopTime ; - org.sample.singletons.generated.UnsafeDCL_first_safe::first_safe_avgt_jmhStub@39 (line 185) 0x00007fab591cee15: mov %r12,0x18(%r10) ;*putfield realTime ; - org.sample.singletons.generated.UnsafeDCL_first_safe::first_safe_avgt_jmhStub@45 (line 186) 0x00007fab591cee19: add $0x40,%rsp 0x00007fab591cee1d: pop %rbp 0x00007fab591cee1e: test %eax,0x1741f1dc(%rip) # 0x00007fab705ee000 ; {poll_return} 0x00007fab591cee24: retq 0x00007fab591cee25: nopw 0x0(%rax,%rax,1) 0.32% 0.14% 0x00007fab591cee30: mov %r10,0x60(%r15) 0.03% 0.08% 0x00007fab591cee34: prefetchnta 0xc0(%r10) 0.09% 0.12% 0x00007fab591cee3c: mov 0x28(%rsp),%r10 9.53% 11.62% 0x00007fab591cee41: mov 0xa8(%r10),%r10 0.23% 0.20% 0x00007fab591cee48: mov %r10,(%rax) 1.17% 0.52% 0x00007fab591cee4b: movl $0xf801017b,0x8(%rax) ; {metadata('org/sample/singletons/SingletonSafe')} 0.17% 0.08% 0x00007fab591cee52: mov %r12d,0xc(%rax) ;*new ; - org.sample.singletons.UnsafeDCL$$Lambda$1/710857960::get@0 ; - org.sample.singletons.UnsafeDCL$UnsafeSingletonFactory::getInstance@20 (line 83) ; - org.sample.singletons.UnsafeDCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.UnsafeDCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) 9.48% 12.88% 0x00007fab591cee56: mov $0x5c9e06010,%r10 ; {oop(a 'java/lang/Byte'[256] )} 0.02% 0x00007fab591cee60: mov 0x2b8(%r10),%r11d ;*aaload ; - java.lang.Byte::valueOf@8 (line 103) ; - org.sample.singletons.SingletonSafe::<init>@7 (line 30) ; - org.sample.singletons.UnsafeDCL$$Lambda$1/710857960::get@4 ; - org.sample.singletons.UnsafeDCL$UnsafeSingletonFactory::getInstance@20 (line 83) ; - org.sample.singletons.UnsafeDCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.UnsafeDCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) 0.18% 0.14% 0x00007fab591cee67: mov %r11d,0xc(%rax) 0.09% 0.02% 0x00007fab591cee6b: mov %rax,%r10 9.71% 11.74% 0x00007fab591cee6e: shr $0x9,%r10 0.05% 0.03% 0x00007fab591cee72: mov $0x7fab694e0000,%r11 0.11% 0.11% 0x00007fab591cee7c: mov %r12b,(%r11,%r10,1) ;*synchronization entry ; - org.sample.singletons.UnsafeDCL$$Lambda$1/710857960::get@-1 ; - org.sample.singletons.UnsafeDCL$UnsafeSingletonFactory::getInstance@20 (line 83) ; - org.sample.singletons.UnsafeDCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.UnsafeDCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) 0.18% 0.09% 0x00007fab591cee80: imul $0x19660d,0xc0(%r8),%r11d 21.08% 4.00% 0x00007fab591cee8b: add $0x3c6ef35f,%r11d ;*iadd ; - org.openjdk.jmh.infra.Blackhole::consume@10 (line 274) ; - org.sample.singletons.generated.UnsafeDCL_first_safe::first_safe_avgt_jmhStub@19 (line 182) 9.31% 3.76% 0x00007fab591cee92: mov %r11d,0xc0(%r8) ;*putfield tlr ; - org.openjdk.jmh.infra.Blackhole::consume@12 (line 274) ; - org.sample.singletons.generated.UnsafeDCL_first_safe::first_safe_avgt_jmhStub@19 (line 182) 9.57% 14.66% 0x00007fab591cee99: test %r11d,0xc4(%r8) 0x00007fab591ceea0: je 0x00007fab591ceefa ;*invokevirtual consume ; - org.sample.singletons.generated.UnsafeDCL_first_safe::first_safe_avgt_jmhStub@19 (line 182) 0.20% 0.15% 0x00007fab591ceea2: movzbl 0x94(%r9),%ecx ;*getfield isDone ; - org.sample.singletons.generated.UnsafeDCL_first_safe::first_safe_avgt_jmhStub@29 (line 184) 0.12% 0.11% 0x00007fab591ceeaa: add $0x1,%rbp ; OopMap{r8=Oop r9=Oop [8]=Oop [16]=Oop off=494} ;*ifeq ; - org.sample.singletons.generated.UnsafeDCL_first_safe::first_safe_avgt_jmhStub@32 (line 184) 0.02% 0.02% 0x00007fab591ceeae: test %eax,0x1741f14c(%rip) # 0x00007fab705ee000 ; {poll} 9.16% 15.01% 0x00007fab591ceeb4: test %ecx,%ecx 0x00007fab591ceeb6: jne 0x00007fab591cedfb ;*aload ; - org.sample.singletons.generated.UnsafeDCL_first_safe::first_safe_avgt_jmhStub@13 (line 182) 0.20% 0.09% 0x00007fab591ceebc: mov 0x60(%r15),%rax 0.14% 0.11% 0x00007fab591ceec0: mov %rax,%r10 0.03% 0.02% 0x00007fab591ceec3: add $0x10,%r10 9.44% 15.37% 0x00007fab591ceec7: cmp 0x70(%r15),%r10 0x00007fab591ceecb: jb 0x00007fab591cee30 0x00007fab591ceed1: mov %r8,0x18(%rsp) 0x00007fab591ceed6: mov %r9,(%rsp) ;*synchronization entry ; - org.sample.singletons.UnsafeDCL$UnsafeSingletonFactory::getInstance@-1 (line 80) ; - org.sample.singletons.UnsafeDCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.UnsafeDCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) 0x00007fab591ceeda: mov $0x7c0080bd8,%rsi ; {metadata('org/sample/singletons/SingletonSafe')} 0x00007fab591ceee4: xchg %ax,%ax 0x00007fab591ceee7: callq 0x00007fab59100ca0 ; OopMap{[0]=Oop [8]=Oop [16]=Oop [24]=Oop off=556} ;*new ; - org.sample.singletons.UnsafeDCL$$Lambda$1/710857960::get@0 .................................................................................................... 90.62% 91.03% ....[Hottest Regions]............................................................................... 90.62% 91.03% [0x7fab591cee30:0x7fab591ceec7] in org.sample.singletons.generated.UnsafeDCL_first_safe::first_safe_avgt_jmhStub 6.35% 6.07% [0x0:0x0] in 1.38% 0.79% [0x7fab6f20d6c0:0x7fab6f20d6c9] in SpinPause (libjvm.so) 0.46% 1.08% [0x7fab6f442370:0x7fab6f442378] in java.lang.Math::max 0.11% 0.03% [0x7fab6f434258:0x7fab6f434265] in java.lang.Math::max 0.09% [0x7fab701c035d:0x7fab701c035d] in [unknown] (libpthread-2.19.so) 0.06% [0x7fab6f399406:0x7fab6f399406] in _ZN22PSScavengeKlassClosure8do_klassEP5Klass (libjvm.so) 0.05% 0.02% [0x7fab6f43428d:0x7fab6f43429e] in java.lang.Math::max 0.05% 0.14% [0x7fab6f4342d7:0x7fab6f4342e6] in java.lang.Math::max 0.05% [0x7fab701bd414:0x7fab701bd42c] in pthread_cond_wait@@GLIBC_2.3.2 (libpthread-2.19.so) 0.05% [0x7fab701c0070:0x7fab701c008b] in __lll_unlock_wake (libpthread-2.19.so) 0.02% [0x7fab43244292:0x7fab43244292] in [unknown] ([unknown]) 0.02% [0x7fab432455c5:0x7fab432455c5] in [unknown] ([unknown]) 0.02% [0x7fab590109b0:0x7fab590109b0] in [unknown] ([unknown]) 0.02% [0x7fab5901e526:0x7fab5901e526] in [unknown] ([unknown]) 0.02% [0x7fab5902110d:0x7fab5902110d] in [unknown] ([unknown]) 0.02% [0x7fab5904df60:0x7fab5904df60] in [unknown] ([unknown]) 0.02% [0x7fab6eda97f0:0x7fab6eda97f0] in _ZN11ProfileData14translate_fromEPKS_ (libjvm.so) 0.02% [0x7fab6ee41140:0x7fab6ee41140] in _ZN12PhaseChaitin16gather_lrg_masksEb (libjvm.so) 0.02% [0x7fab6eead580:0x7fab6eead580] in _ZNK8CodeBlob9is_zombieEv (libjvm.so) 0.58% 0.84% <...other 78 warm regions...> .................................................................................................... 99.98% 99.98% ....[Hottest Methods (after inlining)].............................................................. 90.62% 91.03% org.sample.singletons.generated.UnsafeDCL_first_safe::first_safe_avgt_jmhStub 6.35% 6.07% 1.38% 0.79% SpinPause (libjvm.so) 0.77% 1.38% java.lang.Math::max 0.09% [unknown] (libpthread-2.19.so) 0.09% 0.06% [unknown] ([unknown]) 0.06% _ZN22PSScavengeKlassClosure8do_klassEP5Klass (libjvm.so) 0.05% __lll_unlock_wake (libpthread-2.19.so) 0.05% pthread_cond_wait@@GLIBC_2.3.2 (libpthread-2.19.so) 0.03% 0.02% __strchr_sse2 (libc-2.19.so) 0.02% _ZNK5frame28sender_for_interpreter_frameEP11RegisterMap (libjvm.so) 0.02% jio_print (libjvm.so) 0.02% _ZN12outputStream8print_crEPKcz (libjvm.so) 0.02% _ZN13CollectedHeap21new_store_pre_barrierEP10JavaThreadP7oopDesc (libjvm.so) 0.02% _ZN11ProfileData14translate_fromEPKS_ (libjvm.so) 0.02% _ZN16PSIsAliveClosure11do_object_bEP7oopDesc (libjvm.so) 0.02% _ZN10decode_env12handle_eventEPKcPh (libjvm.so) 0.02% _ZN12CodeHeapPool16get_memory_usageEv (libjvm.so) 0.02% _ZN12LinkResolver21resolve_invokevirtualER8CallInfo6Handle18constantPoolHandleiP6Thread (libjvm.so) 0.02% 0.03% _ZN10fileStream5writeEPKcm (libjvm.so) 0.34% 0.23% <...other 22 warm methods...> .................................................................................................... 99.98% 99.60% ....[Distribution by Area].......................................................................... 91.39% 92.41% 6.35% 6.07% 1.83% 1.25% 0.20% 0.03% 0.12% 0.17% 0.09% 0.06% .................................................................................................... 99.98% 99.98% # VM invoker: /home/shade/Install/jdk8u40/jre/bin/java # VM options: # Warmup: 5 iterations, 1 s each # Measurement: 5 iterations, 1 s each # Timeout: 10 min per iteration # Threads: 1 thread, will synchronize iterations # Benchmark mode: Average time, time/op # Benchmark: org.sample.singletons.UnsafeDCL.first_unsafe # Run progress: 78.57% complete, ETA 00:00:39 # Fork: 1 of 1 # Preparing profilers: perfasm # Profilers consume stdout and stderr from target VM, use -v EXTRA to copy to console # Warmup Iteration 1: 4.827 ns/op # Warmup Iteration 2: 2.531 ns/op # Warmup Iteration 3: 2.362 ns/op # Warmup Iteration 4: 2.334 ns/op # Warmup Iteration 5: 2.360 ns/op Iteration 1: 2.335 ns/op Iteration 2: 2.352 ns/op Iteration 3: 2.359 ns/op Iteration 4: 2.337 ns/op Iteration 5: 2.365 ns/op # Processing profiler results: perfasm Result: 2.350 ±(99.9%) 0.051 ns/op [Average] Statistics: (min, avg, max) = (2.335, 2.350, 2.365), stdev = 0.013 Confidence interval (99.9%): [2.298, 2.401] PrintAssembly processed: 84751 total address lines. Perf output processed (skipped 6.000 seconds): Column 1: cycles (6574 events) Column 2: instructions (6542 events) Hottest code regions (>10.00% "cycles" events): ....[Hottest Region 1].............................................................................. [0x7f282c76e0f0:0x7f282c76e18d] in org.sample.singletons.generated.UnsafeDCL_first_unsafe::first_unsafe_avgt_jmhStub 0x00007f282c76e0d1: mov %rax,0x28(%r10) ;*putfield stopTime ; - org.sample.singletons.generated.UnsafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@39 (line 185) 0x00007f282c76e0d5: mov %r12,0x18(%r10) ;*putfield realTime ; - org.sample.singletons.generated.UnsafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@45 (line 186) 0x00007f282c76e0d9: add $0x40,%rsp 0x00007f282c76e0dd: pop %rbp 0x00007f282c76e0de: test %eax,0x15f1af1c(%rip) # 0x00007f2842689000 ; {poll_return} 0x00007f282c76e0e4: retq 0x00007f282c76e0e5: nopw 0x0(%rax,%rax,1) 0.37% 0.31% 0x00007f282c76e0f0: mov %r10,0x60(%r15) 0.24% 0.15% 0x00007f282c76e0f4: prefetchnta 0xc0(%r10) 0.55% 0.34% 0x00007f282c76e0fc: mov 0x28(%rsp),%r10 9.48% 11.25% 0x00007f282c76e101: mov 0xa8(%r10),%r10 0.52% 0.40% 0x00007f282c76e108: mov %r10,(%rax) 1.45% 0.83% 0x00007f282c76e10b: movl $0xf801017b,0x8(%rax) ; {metadata('org/sample/singletons/SingletonUnsafe')} 0.26% 0.29% 0x00007f282c76e112: mov %r12d,0xc(%rax) ;*new ; - org.sample.singletons.UnsafeDCL$$Lambda$1/710857960::get@0 ; - org.sample.singletons.UnsafeDCL$UnsafeSingletonFactory::getInstance@20 (line 83) ; - org.sample.singletons.UnsafeDCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.UnsafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 9.34% 10.49% 0x00007f282c76e116: mov $0x719433e50,%r10 ; {oop(a 'java/lang/Byte'[256] )} 0.30% 0.06% 0x00007f282c76e120: mov 0x2b8(%r10),%r11d ;*aaload ; - java.lang.Byte::valueOf@8 (line 103) ; - org.sample.singletons.SingletonUnsafe::<init>@7 (line 29) ; - org.sample.singletons.UnsafeDCL$$Lambda$1/710857960::get@4 ; - org.sample.singletons.UnsafeDCL$UnsafeSingletonFactory::getInstance@20 (line 83) ; - org.sample.singletons.UnsafeDCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.UnsafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 0.43% 0.24% 0x00007f282c76e127: mov %r11d,0xc(%rax) ;*putfield x ; - org.sample.singletons.SingletonUnsafe::<init>@10 (line 29) ; - org.sample.singletons.UnsafeDCL$$Lambda$1/710857960::get@4 ; - org.sample.singletons.UnsafeDCL$UnsafeSingletonFactory::getInstance@20 (line 83) ; - org.sample.singletons.UnsafeDCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.UnsafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 0.41% 0.44% 0x00007f282c76e12b: imul $0x19660d,0xc0(%r8),%r11d 18.21% 9.05% 0x00007f282c76e136: mov 0xc4(%r8),%r10d ;*getfield tlrMask ; - org.openjdk.jmh.infra.Blackhole::consume@18 (line 275) ; - org.sample.singletons.generated.UnsafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 0.21% 0.05% 0x00007f282c76e13d: mov %rax,%rcx 0.26% 0.26% 0x00007f282c76e140: add $0x3c6ef35f,%r11d ;*iadd ; - org.openjdk.jmh.infra.Blackhole::consume@10 (line 274) ; - org.sample.singletons.generated.UnsafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 9.93% 3.87% 0x00007f282c76e147: mov %r11d,0xc0(%r8) ;*putfield tlr ; - org.openjdk.jmh.infra.Blackhole::consume@12 (line 274) ; - org.sample.singletons.generated.UnsafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 9.29% 10.82% 0x00007f282c76e14e: and %r11d,%r10d 0.17% 0.32% 0x00007f282c76e151: shr $0x9,%rcx 0.30% 0.11% 0x00007f282c76e155: mov $0x7f28283e8000,%r11 0.12% 0.18% 0x00007f282c76e15f: mov %r12b,(%r11,%rcx,1) ;*putfield x ; - org.sample.singletons.SingletonUnsafe::<init>@10 (line 29) ; - org.sample.singletons.UnsafeDCL$$Lambda$1/710857960::get@4 ; - org.sample.singletons.UnsafeDCL$UnsafeSingletonFactory::getInstance@20 (line 83) ; - org.sample.singletons.UnsafeDCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.UnsafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 9.45% 13.44% 0x00007f282c76e163: test %r10d,%r10d 0x00007f282c76e166: je 0x00007f282c76e1be ;*invokevirtual consume ; - org.sample.singletons.generated.UnsafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 0.35% 0.34% 0x00007f282c76e168: movzbl 0x94(%r9),%ebx ;*getfield isDone ; - org.sample.singletons.generated.UnsafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@29 (line 184) 0.20% 0.20% 0x00007f282c76e170: add $0x1,%rbp ; OopMap{r8=Oop r9=Oop [8]=Oop [16]=Oop off=500} ;*ifeq ; - org.sample.singletons.generated.UnsafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@32 (line 184) 0.15% 0.21% 0x00007f282c76e174: test %eax,0x15f1ae86(%rip) # 0x00007f2842689000 ; {poll} 8.91% 13.79% 0x00007f282c76e17a: test %ebx,%ebx 0x00007f282c76e17c: jne 0x00007f282c76e0bb ;*aload ; - org.sample.singletons.generated.UnsafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@13 (line 182) 0.38% 0.41% 0x00007f282c76e182: mov 0x60(%r15),%rax 0.32% 0.17% 0x00007f282c76e186: mov %rax,%r10 0.18% 0.11% 0x00007f282c76e189: add $0x10,%r10 9.39% 13.62% 0x00007f282c76e18d: cmp 0x70(%r15),%r10 0x00007f282c76e191: jb 0x00007f282c76e0f0 0x00007f282c76e197: mov %r8,0x18(%rsp) 0x00007f282c76e19c: mov %r9,(%rsp) ;*synchronization entry ; - org.sample.singletons.UnsafeDCL$UnsafeSingletonFactory::getInstance@-1 (line 80) ; - org.sample.singletons.UnsafeDCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.UnsafeDCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 0x00007f282c76e1a0: mov $0x7c0080bd8,%rsi ; {metadata('org/sample/singletons/SingletonUnsafe')} 0x00007f282c76e1aa: nop 0x00007f282c76e1ab: callq 0x00007f282c6a9ca0 ; OopMap{[0]=Oop [8]=Oop [16]=Oop [24]=Oop off=560} ;*new ; - org.sample.singletons.UnsafeDCL$$Lambda$1/710857960::get@0 .................................................................................................... 91.16% 91.73% ....[Hottest Regions]............................................................................... 91.16% 91.73% [0x7f282c76e0f0:0x7f282c76e18d] in org.sample.singletons.generated.UnsafeDCL_first_unsafe::first_unsafe_avgt_jmhStub 6.15% 5.81% [0x0:0x0] in 1.20% 0.72% [0x7f28412a86c0:0x7f28412a86c9] in SpinPause (libjvm.so) 0.62% 0.87% [0x7f28414dd370:0x7f28414dd378] in java.lang.Math::max 0.12% [0x7f284225b35d:0x7f284225b361] in [unknown] (libpthread-2.19.so) 0.06% 0.02% [0x7f2842258414:0x7f284225842c] in pthread_cond_wait@@GLIBC_2.3.2 (libpthread-2.19.so) 0.05% 0.03% [0x7f28422593f0:0x7f284225942c] in pthread_getspecific (libpthread-2.19.so) 0.03% 0.03% [0x7f28413d71ae:0x7f28413d71ae] in _ZN10fileStream5writeEPKcm (libjvm.so) 0.03% 0.06% [0x7f284144a8d8:0x7f284144a904] in _ZN13RelocIterator10initializeEP7nmethodPhS2_ (libjvm.so) 0.03% 0.03% [0x7f28414cf25b:0x7f28414cf25b] in java.lang.Math::max 0.03% [0x7f28414cf299:0x7f28414cf299] in java.lang.Math::max 0.03% 0.06% [0x7f28414cf2d7:0x7f28414cf2e6] in java.lang.Math::max 0.02% [0x7f28114872e7:0x7f28114872e7] in [unknown] ([unknown]) 0.02% [0x7f28114874b2:0x7f28114874b2] in [unknown] ([unknown]) 0.02% [0x7f282c5b0180:0x7f282c5b0180] in [unknown] ([unknown]) 0.02% [0x7f282c5c6156:0x7f282c5c6156] in [unknown] ([unknown]) 0.02% [0x7f282c5c94e0:0x7f282c5c94e0] in [unknown] ([unknown]) 0.02% [0x7f2840ea5460:0x7f2840ea5460] in _ZN19NullCheckEliminator11iterate_oneEP10BlockBegin (libjvm.so) 0.02% [0x7f2840f42441:0x7f2840f42441] in _ZN24GCAdaptivePolicyCounters11size_policyEv (libjvm.so) 0.02% [0x7f2841092620:0x7f2841092620] in _ZN14TimePartitions21report_gc_phase_startEPKcRK5Ticks (libjvm.so) 0.35% 0.64% <...other 57 warm regions...> .................................................................................................... 99.98% 100.00% ....[Hottest Methods (after inlining)].............................................................. 91.16% 91.73% org.sample.singletons.generated.UnsafeDCL_first_unsafe::first_unsafe_avgt_jmhStub 6.15% 5.81% 1.20% 0.72% SpinPause (libjvm.so) 0.78% 1.01% java.lang.Math::max 0.12% [unknown] (libpthread-2.19.so) 0.08% 0.03% [unknown] ([unknown]) 0.08% 0.03% pthread_cond_wait@@GLIBC_2.3.2 (libpthread-2.19.so) 0.05% 0.03% pthread_getspecific (libpthread-2.19.so) 0.03% 0.03% _ZN10fileStream5writeEPKcm (libjvm.so) 0.03% 0.11% _ZN13RelocIterator10initializeEP7nmethodPhS2_ (libjvm.so) 0.03% 0.08% vfprintf (libc-2.19.so) 0.02% _ZN7Monitor5ILockEP6Thread (libjvm.so) 0.02% _IO_vsnprintf (libc-2.19.so) 0.02% _ZN19NullCheckEliminator11iterate_oneEP10BlockBegin (libjvm.so) 0.02% _ZN20LinearLeastSquareFit6updateEdd (libjvm.so) 0.02% _ZN7Monitor4lockEP6Thread (libjvm.so) 0.02% _ZN13defaultStream4holdEl (libjvm.so) 0.02% _ZN11OopMapCache6lookupE12methodHandleiP17InterpreterOopMap (libjvm.so) 0.02% _ZN9OopMapSet10add_gc_mapEiP6OopMap (libjvm.so) 0.02% 0.02% _ZN12outputStream15update_positionEPKcm (libjvm.so) 0.15% 0.05% <...other 10 warm methods...> .................................................................................................... 99.98% 99.63% ....[Distribution by Area].......................................................................... 91.94% 92.74% 6.15% 5.81% 1.45% 1.13% 0.24% 0.11% 0.14% 0.18% 0.08% 0.03% .................................................................................................... 99.98% 100.00% # VM invoker: /home/shade/Install/jdk8u40/jre/bin/java # VM options: # Warmup: 5 iterations, 1 s each # Measurement: 5 iterations, 1 s each # Timeout: 10 min per iteration # Threads: 1 thread, will synchronize iterations # Benchmark mode: Average time, time/op # Benchmark: org.sample.singletons.UnsafeLocalDCL.first_safe # Run progress: 85.71% complete, ETA 00:00:26 # Fork: 1 of 1 # Preparing profilers: perfasm # Profilers consume stdout and stderr from target VM, use -v EXTRA to copy to console # Warmup Iteration 1: 4.074 ns/op # Warmup Iteration 2: 2.608 ns/op # Warmup Iteration 3: 2.424 ns/op # Warmup Iteration 4: 2.363 ns/op # Warmup Iteration 5: 2.344 ns/op Iteration 1: 2.368 ns/op Iteration 2: 2.355 ns/op Iteration 3: 2.360 ns/op Iteration 4: 2.356 ns/op Iteration 5: 2.364 ns/op # Processing profiler results: perfasm Result: 2.361 ±(99.9%) 0.021 ns/op [Average] Statistics: (min, avg, max) = (2.355, 2.361, 2.368), stdev = 0.005 Confidence interval (99.9%): [2.340, 2.382] PrintAssembly processed: 84607 total address lines. Perf output processed (skipped 6.000 seconds): Column 1: cycles (6682 events) Column 2: instructions (6705 events) Hottest code regions (>10.00% "cycles" events): ....[Hottest Region 1].............................................................................. [0x7f90e077fa30:0x7f90e077fac7] in org.sample.singletons.generated.UnsafeLocalDCL_first_safe::first_safe_avgt_jmhStub 0x00007f90e077fa11: mov %rax,0x28(%r10) ;*putfield stopTime ; - org.sample.singletons.generated.UnsafeLocalDCL_first_safe::first_safe_avgt_jmhStub@39 (line 185) 0x00007f90e077fa15: mov %r12,0x18(%r10) ;*putfield realTime ; - org.sample.singletons.generated.UnsafeLocalDCL_first_safe::first_safe_avgt_jmhStub@45 (line 186) 0x00007f90e077fa19: add $0x40,%rsp 0x00007f90e077fa1d: pop %rbp 0x00007f90e077fa1e: test %eax,0x15f355dc(%rip) # 0x00007f90f66b5000 ; {poll_return} 0x00007f90e077fa24: retq 0x00007f90e077fa25: nopw 0x0(%rax,%rax,1) 0.25% 0.16% 0x00007f90e077fa30: mov %r10,0x60(%r15) 0.03% 0.07% 0x00007f90e077fa34: prefetchnta 0xc0(%r10) 0.15% 0.10% 0x00007f90e077fa3c: mov 0x28(%rsp),%r10 9.70% 11.60% 0x00007f90e077fa41: mov 0xa8(%r10),%r10 0.42% 0.25% 0x00007f90e077fa48: mov %r10,(%rax) 0.73% 0.48% 0x00007f90e077fa4b: movl $0xf801017b,0x8(%rax) ; {metadata('org/sample/singletons/SingletonSafe')} 0.10% 0.15% 0x00007f90e077fa52: mov %r12d,0xc(%rax) ;*new ; - org.sample.singletons.UnsafeLocalDCL$$Lambda$1/710857960::get@0 ; - org.sample.singletons.UnsafeLocalDCL$UnsafeSingletonFactory::getInstance@23 (line 85) ; - org.sample.singletons.UnsafeLocalDCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.UnsafeLocalDCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) 9.50% 11.08% 0x00007f90e077fa56: mov $0x5c9e06010,%r10 ; {oop(a 'java/lang/Byte'[256] )} 0.09% 0.04% 0x00007f90e077fa60: mov 0x2b8(%r10),%r11d ;*aaload ; - java.lang.Byte::valueOf@8 (line 103) ; - org.sample.singletons.SingletonSafe::<init>@7 (line 30) ; - org.sample.singletons.UnsafeLocalDCL$$Lambda$1/710857960::get@4 ; - org.sample.singletons.UnsafeLocalDCL$UnsafeSingletonFactory::getInstance@23 (line 85) ; - org.sample.singletons.UnsafeLocalDCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.UnsafeLocalDCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) 0.36% 0.19% 0x00007f90e077fa67: mov %r11d,0xc(%rax) 0.19% 0.16% 0x00007f90e077fa6b: mov %rax,%r10 9.26% 10.96% 0x00007f90e077fa6e: shr $0x9,%r10 0.06% 0.06% 0x00007f90e077fa72: mov $0x7f90dc3e8000,%r11 0.04% 0.09% 0x00007f90e077fa7c: mov %r12b,(%r11,%r10,1) ;*synchronization entry ; - org.sample.singletons.UnsafeLocalDCL$$Lambda$1/710857960::get@-1 ; - org.sample.singletons.UnsafeLocalDCL$UnsafeSingletonFactory::getInstance@23 (line 85) ; - org.sample.singletons.UnsafeLocalDCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.UnsafeLocalDCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) 0.13% 0.15% 0x00007f90e077fa80: imul $0x19660d,0xc0(%r8),%r11d 18.84% 3.71% 0x00007f90e077fa8b: add $0x3c6ef35f,%r11d ;*iadd ; - org.openjdk.jmh.infra.Blackhole::consume@10 (line 274) ; - org.sample.singletons.generated.UnsafeLocalDCL_first_safe::first_safe_avgt_jmhStub@19 (line 182) 10.15% 4.98% 0x00007f90e077fa92: mov %r11d,0xc0(%r8) ;*putfield tlr ; - org.openjdk.jmh.infra.Blackhole::consume@12 (line 274) ; - org.sample.singletons.generated.UnsafeLocalDCL_first_safe::first_safe_avgt_jmhStub@19 (line 182) 10.10% 15.18% 0x00007f90e077fa99: test %r11d,0xc4(%r8) 0x00007f90e077faa0: je 0x00007f90e077fafa ;*invokevirtual consume ; - org.sample.singletons.generated.UnsafeLocalDCL_first_safe::first_safe_avgt_jmhStub@19 (line 182) 0.25% 0.06% 0x00007f90e077faa2: movzbl 0x94(%r9),%ecx ;*getfield isDone ; - org.sample.singletons.generated.UnsafeLocalDCL_first_safe::first_safe_avgt_jmhStub@29 (line 184) 0.07% 0.16% 0x00007f90e077faaa: add $0x1,%rbp ; OopMap{r8=Oop r9=Oop [8]=Oop [16]=Oop off=494} ;*ifeq ; - org.sample.singletons.generated.UnsafeLocalDCL_first_safe::first_safe_avgt_jmhStub@32 (line 184) 0.04% 0.01% 0x00007f90e077faae: test %eax,0x15f3554c(%rip) # 0x00007f90f66b5000 ; {poll} 10.24% 15.41% 0x00007f90e077fab4: test %ecx,%ecx 0x00007f90e077fab6: jne 0x00007f90e077f9fb ;*aload ; - org.sample.singletons.generated.UnsafeLocalDCL_first_safe::first_safe_avgt_jmhStub@13 (line 182) 0.19% 0.04% 0x00007f90e077fabc: mov 0x60(%r15),%rax 0.16% 0.06% 0x00007f90e077fac0: mov %rax,%r10 0.04% 0.06% 0x00007f90e077fac3: add $0x10,%r10 9.59% 15.33% 0x00007f90e077fac7: cmp 0x70(%r15),%r10 0x00007f90e077facb: jb 0x00007f90e077fa30 0x00007f90e077fad1: mov %r8,0x18(%rsp) 0x00007f90e077fad6: mov %r9,(%rsp) ;*synchronization entry ; - org.sample.singletons.UnsafeLocalDCL$UnsafeSingletonFactory::getInstance@-1 (line 80) ; - org.sample.singletons.UnsafeLocalDCL::first_safe@12 (line 73) ; - org.sample.singletons.generated.UnsafeLocalDCL_first_safe::first_safe_avgt_jmhStub@16 (line 182) 0x00007f90e077fada: mov $0x7c0080bd8,%rsi ; {metadata('org/sample/singletons/SingletonSafe')} 0x00007f90e077fae4: xchg %ax,%ax 0x00007f90e077fae7: callq 0x00007f90e06a9ca0 ; OopMap{[0]=Oop [8]=Oop [16]=Oop [24]=Oop off=556} ;*new ; - org.sample.singletons.UnsafeLocalDCL$$Lambda$1/710857960::get@0 .................................................................................................... 90.74% 90.59% ....[Hottest Regions]............................................................................... 90.74% 90.59% [0x7f90e077fa30:0x7f90e077fac7] in org.sample.singletons.generated.UnsafeLocalDCL_first_safe::first_safe_avgt_jmhStub 5.48% 5.56% [0x0:0x0] in 2.20% 1.18% [0x7f90f52d46c0:0x7f90f52d46c9] in SpinPause (libjvm.so) 0.75% 1.67% [0x7f90f550936e:0x7f90f5509388] in _ZN22ParallelTaskTerminator17offer_terminationEP20TerminatorTerminator (libjvm.so) 0.13% 0.13% [0x7f90f54fb258:0x7f90f54fb265] in _ZN11StringTable17unlink_or_oops_doEP17BoolObjectClosureP10OopClosurePiS4_ (libjvm.so) 0.06% [0x7f90f5460406:0x7f90f5460406] in _ZN22PSScavengeKlassClosure8do_klassEP5Klass (libjvm.so) 0.04% 0.03% [0x7f90f6284414:0x7f90f6284414] in pthread_cond_wait@@GLIBC_2.3.2 (libpthread-2.19.so) 0.03% 0.01% [0x7f90f545c5a0:0x7f90f545c5cc] in _ZN19GenericTaskQueueSetI17OverflowTaskQueueI8StarTaskLt256ELj131072EELt256EE4peekEv (libjvm.so) 0.03% [0x7f90f54768f6:0x7f90f54768f9] in _ZN13RelocIterator10initializeEP7nmethodPhS2_ (libjvm.so) 0.01% [0x7f90c94a6721:0x7f90c94a6721] in [unknown] ([unknown]) 0.01% [0x7f90e05be7c7:0x7f90e05be7c7] in [unknown] ([unknown]) 0.01% 0.01% [0x7f90e05ca2c4:0x7f90e05ca2c4] in [unknown] ([unknown]) 0.01% [0x7f90e05ef36c:0x7f90e05ef36c] in 0.01% [0x7f90f4d21898:0x7f90f4d21898] in pthread_mutex_unlock@plt (libjvm.so) 0.01% [0x7f90f4dd631e:0x7f90f4dd631e] in _ZNK18AdaptiveSizePolicy16decaying_gc_costEv (libjvm.so) 0.01% [0x7f90f4e10560:0x7f90f4e10560] in _ZN9Assembler12call_literalEPhRK16RelocationHolder (libjvm.so) 0.01% [0x7f90f4efc2c8:0x7f90f4efc2c8] in _ZN18CardTableExtension26scavenge_contents_parallelEP16ObjectStartArrayP12MutableSpaceP8HeapWordP18PSPromotionManagerjj (libjvm.so) 0.01% [0x7f90f4f51620:0x7f90f4f51620] in _ZN15ClassFileParser29verify_legal_method_modifiersEibP6SymbolP6Thread (libjvm.so) 0.01% [0x7f90f4f5a550:0x7f90f4f5a550] in _ZN15ClassFileParser27parse_constant_pool_entriesEiP6Thread (libjvm.so) 0.01% [0x7f90f4f77e8f:0x7f90f4f77e8f] in _ZN9CodeCache9find_blobEPv (libjvm.so) 0.34% 0.81% <...other 57 warm regions...> .................................................................................................... 99.97% 100.00% ....[Hottest Methods (after inlining)].............................................................. 90.74% 90.59% org.sample.singletons.generated.UnsafeLocalDCL_first_safe::first_safe_avgt_jmhStub 5.48% 5.56% 2.20% 1.18% SpinPause (libjvm.so) 0.76% 1.67% _ZN22ParallelTaskTerminator17offer_terminationEP20TerminatorTerminator (libjvm.so) 0.16% 0.30% _ZN11StringTable17unlink_or_oops_doEP17BoolObjectClosureP10OopClosurePiS4_ (libjvm.so) 0.06% _ZN22PSScavengeKlassClosure8do_klassEP5Klass (libjvm.so) 0.06% 0.03% pthread_cond_wait@@GLIBC_2.3.2 (libpthread-2.19.so) 0.04% 0.01% _ZN13RelocIterator10initializeEP7nmethodPhS2_ (libjvm.so) 0.04% 0.03% [unknown] ([unknown]) 0.04% 0.01% vfprintf (libc-2.19.so) 0.03% 0.01% _ZN19GenericTaskQueueSetI17OverflowTaskQueueI8StarTaskLt256ELj131072EELt256EE4peekEv (libjvm.so) 0.03% 0.01% _ZN12ConstantPool21impl_signature_ref_atEib (libjvm.so) 0.01% _ZN13CollectedHeap23allocate_from_tlab_slowE11KlassHandleP6Threadm (libjvm.so) 0.01% _ZN12stringStream5writeEPKcm (libjvm.so) 0.01% _ZN11MetaspaceGC17capacity_until_GCEv (libjvm.so) 0.01% _ZN9Assembler12call_literalEPhRK16RelocationHolder (libjvm.so) 0.01% 0.07% _ZN10fileStream5writeEPKcm (libjvm.so) 0.01% _ZN15ClassFileParser29verify_legal_method_modifiersEibP6SymbolP6Thread (libjvm.so) 0.01% _ZN10JNIHandles12weak_oops_doEP17BoolObjectClosureP10OopClosure (libjvm.so) 0.01% 0.01% 0.19% 0.03% <...other 13 warm methods...> .................................................................................................... 99.97% 99.54% ....[Distribution by Area].......................................................................... 90.75% 90.60% 5.48% 5.56% 3.56% 3.64% 0.07% 0.03% 0.06% 0.13% 0.04% 0.03% .................................................................................................... 99.97% 100.00% # VM invoker: /home/shade/Install/jdk8u40/jre/bin/java # VM options: # Warmup: 5 iterations, 1 s each # Measurement: 5 iterations, 1 s each # Timeout: 10 min per iteration # Threads: 1 thread, will synchronize iterations # Benchmark mode: Average time, time/op # Benchmark: org.sample.singletons.UnsafeLocalDCL.first_unsafe # Run progress: 92.86% complete, ETA 00:00:13 # Fork: 1 of 1 # Preparing profilers: perfasm # Profilers consume stdout and stderr from target VM, use -v EXTRA to copy to console # Warmup Iteration 1: 5.535 ns/op # Warmup Iteration 2: 3.447 ns/op # Warmup Iteration 3: 2.575 ns/op # Warmup Iteration 4: 2.540 ns/op # Warmup Iteration 5: 2.330 ns/op Iteration 1: 2.356 ns/op Iteration 2: 2.333 ns/op Iteration 3: 2.363 ns/op Iteration 4: 2.343 ns/op Iteration 5: 2.337 ns/op # Processing profiler results: perfasm Result: 2.347 ±(99.9%) 0.049 ns/op [Average] Statistics: (min, avg, max) = (2.333, 2.347, 2.363), stdev = 0.013 Confidence interval (99.9%): [2.298, 2.395] PrintAssembly processed: 80072 total address lines. Perf output processed (skipped 6.000 seconds): Column 1: cycles (6390 events) Column 2: instructions (6346 events) Hottest code regions (>10.00% "cycles" events): ....[Hottest Region 1].............................................................................. [0x7f36551c79b0:0x7f36551c7a4d] in org.sample.singletons.generated.UnsafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub 0x00007f36551c7991: mov %rax,0x28(%r10) ;*putfield stopTime ; - org.sample.singletons.generated.UnsafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@39 (line 185) 0x00007f36551c7995: mov %r12,0x18(%r10) ;*putfield realTime ; - org.sample.singletons.generated.UnsafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@45 (line 186) 0x00007f36551c7999: add $0x40,%rsp 0x00007f36551c799d: pop %rbp 0x00007f36551c799e: test %eax,0x176c265c(%rip) # 0x00007f366c88a000 ; {poll_return} 0x00007f36551c79a4: retq 0x00007f36551c79a5: nopw 0x0(%rax,%rax,1) 0.39% 0.32% 0x00007f36551c79b0: mov %r10,0x60(%r15) 0.20% 0.16% 0x00007f36551c79b4: prefetchnta 0xc0(%r10) 0.58% 0.20% 0x00007f36551c79bc: mov 0x28(%rsp),%r10 9.81% 11.33% 0x00007f36551c79c1: mov 0xa8(%r10),%r10 0.53% 0.46% 0x00007f36551c79c8: mov %r10,(%rax) 1.14% 0.65% 0x00007f36551c79cb: movl $0xf801017b,0x8(%rax) ; {metadata('org/sample/singletons/SingletonUnsafe')} 0.31% 0.24% 0x00007f36551c79d2: mov %r12d,0xc(%rax) ;*new ; - org.sample.singletons.UnsafeLocalDCL$$Lambda$1/710857960::get@0 ; - org.sample.singletons.UnsafeLocalDCL$UnsafeSingletonFactory::getInstance@23 (line 85) ; - org.sample.singletons.UnsafeLocalDCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.UnsafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 10.02% 10.40% 0x00007f36551c79d6: mov $0x5c9e0b370,%r10 ; {oop(a 'java/lang/Byte'[256] )} 0.27% 0.13% 0x00007f36551c79e0: mov 0x2b8(%r10),%r11d ;*aaload ; - java.lang.Byte::valueOf@8 (line 103) ; - org.sample.singletons.SingletonUnsafe::<init>@7 (line 29) ; - org.sample.singletons.UnsafeLocalDCL$$Lambda$1/710857960::get@4 ; - org.sample.singletons.UnsafeLocalDCL$UnsafeSingletonFactory::getInstance@23 (line 85) ; - org.sample.singletons.UnsafeLocalDCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.UnsafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 0.34% 0.24% 0x00007f36551c79e7: mov %r11d,0xc(%rax) ;*putfield x ; - org.sample.singletons.SingletonUnsafe::<init>@10 (line 29) ; - org.sample.singletons.UnsafeLocalDCL$$Lambda$1/710857960::get@4 ; - org.sample.singletons.UnsafeLocalDCL$UnsafeSingletonFactory::getInstance@23 (line 85) ; - org.sample.singletons.UnsafeLocalDCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.UnsafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 0.38% 0.11% 0x00007f36551c79eb: imul $0x19660d,0xc0(%r8),%r11d 19.41% 8.92% 0x00007f36551c79f6: mov 0xc4(%r8),%r10d ;*getfield tlrMask ; - org.openjdk.jmh.infra.Blackhole::consume@18 (line 275) ; - org.sample.singletons.generated.UnsafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 0.25% 0.14% 0x00007f36551c79fd: mov %rax,%rcx 0.14% 0.19% 0x00007f36551c7a00: add $0x3c6ef35f,%r11d ;*iadd ; - org.openjdk.jmh.infra.Blackhole::consume@10 (line 274) ; - org.sample.singletons.generated.UnsafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 9.51% 4.19% 0x00007f36551c7a07: mov %r11d,0xc0(%r8) ;*putfield tlr ; - org.openjdk.jmh.infra.Blackhole::consume@12 (line 274) ; - org.sample.singletons.generated.UnsafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 9.87% 11.49% 0x00007f36551c7a0e: and %r11d,%r10d 0.27% 0.41% 0x00007f36551c7a11: shr $0x9,%rcx 0.19% 0.20% 0x00007f36551c7a15: mov $0x7f366577c000,%r11 0.20% 0.17% 0x00007f36551c7a1f: mov %r12b,(%r11,%rcx,1) ;*putfield x ; - org.sample.singletons.SingletonUnsafe::<init>@10 (line 29) ; - org.sample.singletons.UnsafeLocalDCL$$Lambda$1/710857960::get@4 ; - org.sample.singletons.UnsafeLocalDCL$UnsafeSingletonFactory::getInstance@23 (line 85) ; - org.sample.singletons.UnsafeLocalDCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.UnsafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 9.80% 13.80% 0x00007f36551c7a23: test %r10d,%r10d 0x00007f36551c7a26: je 0x00007f36551c7a7e ;*invokevirtual consume ; - org.sample.singletons.generated.UnsafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@19 (line 182) 0.20% 0.38% 0x00007f36551c7a28: movzbl 0x94(%r9),%ebx ;*getfield isDone ; - org.sample.singletons.generated.UnsafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@29 (line 184) 0.47% 0.41% 0x00007f36551c7a30: add $0x1,%rbp ; OopMap{r8=Oop r9=Oop [8]=Oop [16]=Oop off=500} ;*ifeq ; - org.sample.singletons.generated.UnsafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@32 (line 184) 0.20% 0.25% 0x00007f36551c7a34: test %eax,0x176c25c6(%rip) # 0x00007f366c88a000 ; {poll} 9.28% 14.29% 0x00007f36551c7a3a: test %ebx,%ebx 0x00007f36551c7a3c: jne 0x00007f36551c797b ;*aload ; - org.sample.singletons.generated.UnsafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@13 (line 182) 0.27% 0.30% 0x00007f36551c7a42: mov 0x60(%r15),%rax 0.17% 0.22% 0x00007f36551c7a46: mov %rax,%r10 0.17% 0.25% 0x00007f36551c7a49: add $0x10,%r10 9.17% 14.36% 0x00007f36551c7a4d: cmp 0x70(%r15),%r10 0x00007f36551c7a51: jb 0x00007f36551c79b0 0x00007f36551c7a57: mov %r8,0x18(%rsp) 0x00007f36551c7a5c: mov %r9,(%rsp) ;*synchronization entry ; - org.sample.singletons.UnsafeLocalDCL$UnsafeSingletonFactory::getInstance@-1 (line 80) ; - org.sample.singletons.UnsafeLocalDCL::first_unsafe@12 (line 68) ; - org.sample.singletons.generated.UnsafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub@16 (line 182) 0x00007f36551c7a60: mov $0x7c0080bd8,%rsi ; {metadata('org/sample/singletons/SingletonUnsafe')} 0x00007f36551c7a6a: nop 0x00007f36551c7a6b: callq 0x00007f3655100ca0 ; OopMap{[0]=Oop [8]=Oop [16]=Oop [24]=Oop off=560} ;*new ; - org.sample.singletons.UnsafeLocalDCL$$Lambda$1/710857960::get@0 .................................................................................................... 93.55% 94.20% ....[Hottest Regions]............................................................................... 93.55% 94.20% [0x7f36551c79b0:0x7f36551c7a4d] in org.sample.singletons.generated.UnsafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub 4.18% 4.29% [0x0:0x0] in 0.94% 0.39% [0x7f366b4a96c0:0x7f366b4a96c9] in java.net.SocketOutputStream::socketWrite0 0.38% 0.58% [0x7f366b6de370:0x7f366b6de378] in java.net.SocketOutputStream::socketWrite0 0.08% [0x7f366c459414:0x7f366c459417] in java.net.SocketOutputStream::socketWrite0 0.06% 0.05% [0x7f366b5d81a0:0x7f366b5d81ae] in java.net.SocketOutputStream::socketWrite0 0.06% [0x7f366c4597d1:0x7f366c4597e9] in java.net.SocketOutputStream::socketWrite0 0.03% [0x7f366b15073b:0x7f366b150753] in java.net.SocketOutputStream::socketWrite0 0.03% [0x7f366b1c2970:0x7f366b1c2978] in java.net.SocketOutputStream::socketWrite0 0.02% [0x7f3655010a90:0x7f3655010a90] in [unknown] ([unknown]) 0.02% [0x7f3655020e04:0x7f3655020e04] in [unknown] ([unknown]) 0.02% [0x7f3655022523:0x7f3655022523] in [unknown] ([unknown]) 0.02% [0x7f365502494d:0x7f365502494d] in [unknown] ([unknown]) 0.02% [0x7f366b041e57:0x7f366b041e57] in java.net.SocketOutputStream::socketWrite0 0.02% [0x7f366b051008:0x7f366b051008] in java.net.SocketOutputStream::socketWrite0 0.02% [0x7f366b09d9d0:0x7f366b09d9d0] in java.net.SocketOutputStream::socketWrite0 0.02% [0x7f366b150206:0x7f366b150206] in java.net.SocketOutputStream::socketWrite0 0.02% [0x7f366b174f80:0x7f366b174f80] in java.net.SocketOutputStream::socketWrite0 0.02% [0x7f366b1d6db0:0x7f366b1d6db0] in java.net.SocketOutputStream::socketWrite0 0.02% [0x7f366b225046:0x7f366b225046] in java.net.SocketOutputStream::socketWrite0 0.52% 0.47% <...other 56 warm regions...> .................................................................................................... 100.00% 99.98% ....[Hottest Methods (after inlining)].............................................................. 93.55% 94.20% org.sample.singletons.generated.UnsafeLocalDCL_first_unsafe::first_unsafe_avgt_jmhStub 4.18% 4.29% 2.19% 1.48% java.net.SocketOutputStream::socketWrite0 0.06% 0.02% [unknown] ([unknown]) 0.02% __vdso_clock_gettime ([vdso]) .................................................................................................... 100.00% 99.98% ....[Distribution by Area].......................................................................... 95.74% 95.68% 4.18% 4.29% 0.06% 0.02% 0.02% .................................................................................................... 100.00% 99.98% # Run complete. Total time: 00:03:03 Benchmark Mode Samples Score Error Units o.s.s.FinalWrapper.first_safe avgt 5 4.167 ± 0.054 ns/op o.s.s.FinalWrapper.first_safe:@asm avgt 1 NaN ± NaN --- o.s.s.FinalWrapper.first_unsafe avgt 5 4.153 ± 0.099 ns/op o.s.s.FinalWrapper.first_unsafe:@asm avgt 1 NaN ± NaN --- o.s.s.Holder.first_safe avgt 5 2.263 ± 0.016 ns/op o.s.s.Holder.first_safe:@asm avgt 1 NaN ± NaN --- o.s.s.Holder.first_unsafe avgt 5 2.260 ± 0.000 ns/op o.s.s.Holder.first_unsafe:@asm avgt 1 NaN ± NaN --- o.s.s.SafeDCL.first_safe avgt 5 6.734 ± 0.107 ns/op o.s.s.SafeDCL.first_safe:@asm avgt 1 NaN ± NaN --- o.s.s.SafeDCL.first_unsafe avgt 5 6.736 ± 0.191 ns/op o.s.s.SafeDCL.first_unsafe:@asm avgt 1 NaN ± NaN --- o.s.s.SafeLocalDCL.first_safe avgt 5 6.714 ± 0.125 ns/op o.s.s.SafeLocalDCL.first_safe:@asm avgt 1 NaN ± NaN --- o.s.s.SafeLocalDCL.first_unsafe avgt 5 6.741 ± 0.131 ns/op o.s.s.SafeLocalDCL.first_unsafe:@asm avgt 1 NaN ± NaN --- o.s.s.SynchronizedCL.first_safe avgt 5 2.357 ± 0.039 ns/op o.s.s.SynchronizedCL.first_safe:@asm avgt 1 NaN ± NaN --- o.s.s.SynchronizedCL.first_unsafe avgt 5 2.366 ± 0.155 ns/op o.s.s.SynchronizedCL.first_unsafe:@asm avgt 1 NaN ± NaN --- o.s.s.UnsafeDCL.first_safe avgt 5 2.346 ± 0.023 ns/op o.s.s.UnsafeDCL.first_safe:@asm avgt 1 NaN ± NaN --- o.s.s.UnsafeDCL.first_unsafe avgt 5 2.350 ± 0.051 ns/op o.s.s.UnsafeDCL.first_unsafe:@asm avgt 1 NaN ± NaN --- o.s.s.UnsafeLocalDCL.first_safe avgt 5 2.361 ± 0.021 ns/op o.s.s.UnsafeLocalDCL.first_safe:@asm avgt 1 NaN ± NaN --- o.s.s.UnsafeLocalDCL.first_unsafe avgt 5 2.347 ± 0.049 ns/op o.s.s.UnsafeLocalDCL.first_unsafe:@asm avgt 1 NaN ± NaN ---