C2:
# JMH version: 1.21
# VM version: JDK 11.0.2, Java HotSpot(TM) 64-Bit Server VM, 11.0.2+9-LTS
# VM invoker: /home/carl/bin/jdk-11.0.2/bin/java
# VM options: -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+LogCompilation -XX:LogFile=/tmp/blah.txt -XX:+PrintAssembly -XX:+PrintInterpreter -XX:+PrintNMethods -XX:+PrintNativeNMethods -XX:+PrintSignatureHandlers -XX:+PrintAdapterHandlers -XX:+PrintStubCode -XX:+PrintCompilation -XX:+PrintInlining -XX:+TraceClassLoading -XX:PrintAssemblyOptions=syntax -XX:PrintAssemblyOptions=intel
# Warmup: 10 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: io.perfmark.java9.VarHandleMarkHolderBenchmark.link
# Run progress: 25.00% complete, ETA 00:02:45
# Fork: 1 of 1
# Preparing profilers: LinuxPerfAsmProfiler
# Profilers consume stdout and stderr from target VM, use -v EXTRA to copy to console
# Warmup Iteration 1: 5.791 ns/op
# Warmup Iteration 2: 5.639 ns/ops]
# Warmup Iteration 3: 5.239 ns/ops]
# Warmup Iteration 4: 4.792 ns/ops]
# Warmup Iteration 5: 4.306 ns/ops]
# Warmup Iteration 6: 4.331 ns/ops]
# Warmup Iteration 7: 4.765 ns/ops]
# Warmup Iteration 8: 4.078 ns/ops]
# Warmup Iteration 9: 4.037 ns/op0s]
# Warmup Iteration 10: 3.962 ns/op1s]
Iteration 1: 3.968 ns/opING [1m 12s]
Iteration 2: 3.955 ns/opING [1m 13s]
Iteration 3: 3.956 ns/opING [1m 14s]
Iteration 4: 3.952 ns/opING [1m 15s]
Iteration 5: 3.931 ns/opING [1m 16s]
> Task :perfmark-java9:jmh
# Processing profiler results: LinuxPerfAsmProfiler
Result "io.perfmark.java9.VarHandleMarkHolderBenchmark.link":
3.952 ±(99.9%) 0.051 ns/op [Average]
(min, avg, max) = (3.931, 3.952, 3.968), stdev = 0.013
CI (99.9%): [3.901, 4.004] (assumes normal distribution)
Secondary result "io.perfmark.java9.VarHandleMarkHolderBenchmark.link:·asm":
PrintAssembly processed: 135441 total address lines.
Perf output processed (skipped 12.103 seconds):
Column 1: cycles (5101 events)
Hottest code regions (>10.00% "cycles" events):
....[Hottest Region 1]..............................................................................
c2, level 4, io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub, version 537 (226 bytes)
0x00007fc1980f0f59: vzeroupper
0x00007fc1980f0f5c: movabs r10,0x7fc1acd01600
0x00007fc1980f0f66: call r10
0x00007fc1980f0f69: mov r11,rbp
0x00007fc1980f0f6c: mov r8,QWORD PTR [rsp+0x50] ;*invokevirtual putObjectOpaque {reexecute=0 rethrow=0 return_oop=0}
; - java.lang.invoke.VarHandleObjects$Array::setOpaque@47 (line 459)
; - java.lang.invoke.VarHandleGuards::guard_LIL_V@37 (line 659)
; - io.perfmark.java9.VarHandleMarkHolder::link@43 (line 133)
; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.29% ↗↗↗ 0x00007fc1980f0f71: mov r9d,DWORD PTR [r12+rbx*8+0x34]
│││ ;*getfield genOps {reexecute=0 rethrow=0 return_oop=0}
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@50 (line 134)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
3.16% │││ 0x00007fc1980f0f76: mov r10d,DWORD PTR [r12+r9*8+0xc]
│││ ;*arraylength {reexecute=0 rethrow=0 return_oop=0}
│││ ; - java.lang.invoke.VarHandleLongs$Array::setOpaque@14 (line 601)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIJ_V@37 (line 763)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@60 (line 134)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
│││ ; implicit exception: dispatches to 0x00007fc1980f140e
4.49% │││ 0x00007fc1980f0f7b: cmp r13d,r10d
│││ 0x00007fc1980f0f7e: jae 0x00007fc1980f1176 ;*invokevirtual putLongOpaque {reexecute=0 rethrow=0 return_oop=0}
│││ ; - java.lang.invoke.VarHandleLongs$Array::setOpaque@34 (line 601)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIJ_V@37 (line 763)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@60 (line 134)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.06% │││ 0x00007fc1980f0f84: add r14,0x1 ;*ladd {reexecute=0 rethrow=0 return_oop=0}
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@21 (line 191)
0.22% │││ 0x00007fc1980f0f88: mov rcx,QWORD PTR [rsp+0x10]
2.59% │││ 0x00007fc1980f0f8d: add rcx,0x1
4.43% │││ 0x00007fc1980f0f91: lea r10,[r12+r9*8]
0.08% │││ 0x00007fc1980f0f95: mov QWORD PTR [r10+r13*8+0x10],0x8
0.39% │││ 0x00007fc1980f0f9e: mov QWORD PTR [r12+rbx*8+0x18],rcx
│││ ;*invokevirtual storeFence {reexecute=0 rethrow=0 return_oop=0}
│││ ; - jdk.internal.misc.Unsafe::storeStoreFence@1 (line 3330)
│││ ; - java.lang.invoke.VarHandle::storeStoreFence@3 (line 2083)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@74 (line 136)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
2.90% │││ 0x00007fc1980f0fa3: movzx r9d,BYTE PTR [r8+0x94] ;*invokevirtual putObjectOpaque {reexecute=0 rethrow=0 return_oop=0}
│││ ; - java.lang.invoke.VarHandleObjects$Array::setOpaque@47 (line 459)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIL_V@37 (line 659)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@43 (line 133)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
4.37% │││ 0x00007fc1980f0fab: mov r10,QWORD PTR [r15+0x108]
│││ ; ImmutableOopMap{r11=Oop r8=Oop [88]=Oop }
│││ ;*ifeq {reexecute=1 rethrow=0 return_oop=0}
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@28 (line 192)
0.16% │││ 0x00007fc1980f0fb2: test DWORD PTR [r10],eax ; {poll}
0.51% │││ 0x00007fc1980f0fb5: test r9d,r9d
│││ 0x00007fc1980f0fb8: jne 0x00007fc1980f11c0 ;*aload_1 {reexecute=0 rethrow=0 return_oop=0}
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@31 (line 193)
2.45% │││ 0x00007fc1980f0fbe: mov ebx,DWORD PTR [r11+0x10] ;*getfield markHolder {reexecute=0 rethrow=0 return_oop=0}
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@1 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
4.35% │││ 0x00007fc1980f0fc2: mov r9d,DWORD PTR [r11+0xc] ;*getfield MARKER {reexecute=0 rethrow=0 return_oop=0}
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@9 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.18% │││ 0x00007fc1980f0fc6: mov DWORD PTR [rsp+0x28],r9d
0.22% │││ 0x00007fc1980f0fcb: mov r9d,DWORD PTR [r12+rbx*8+0x28]
│││ ;*getfield tagIds {reexecute=0 rethrow=0 return_oop=0}
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@23 (line 132)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
│││ ; implicit exception: dispatches to 0x00007fc1980f13d8
2.98% │││ 0x00007fc1980f0fd0: mov r10d,DWORD PTR [r12+r9*8+0xc]
│││ ;*arraylength {reexecute=0 rethrow=0 return_oop=0}
│││ ; - java.lang.invoke.VarHandleLongs$Array::setOpaque@14 (line 601)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIJ_V@37 (line 763)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@29 (line 132)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
│││ ; implicit exception: dispatches to 0x00007fc1980f13ee
5.29% │││ 0x00007fc1980f0fd5: mov rcx,QWORD PTR [r12+rbx*8+0x18]
│││ ;*invokevirtual getLong {reexecute=0 rethrow=0 return_oop=0}
│││ ; - java.lang.invoke.VarHandleLongs$FieldInstanceReadOnly::get@18 (line 60)
│││ ; - java.lang.invoke.VarHandleGuards::guard_L_J@32 (line 165)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@4 (line 130)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.12% │││ 0x00007fc1980f0fda: mov QWORD PTR [rsp+0x10],rcx
0.35% │││ 0x00007fc1980f0fdf: and rcx,QWORD PTR [r12+rbx*8+0x10]
2.72% │││ 0x00007fc1980f0fe4: mov r13d,ecx ;*l2i {reexecute=0 rethrow=0 return_oop=0}
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@16 (line 131)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
4.90% │││ 0x00007fc1980f0fe7: cmp r13d,r10d
0.02% │││ 0x00007fc1980f0fea: jae 0x00007fc1980f10ee ;*invokevirtual putLongOpaque {reexecute=0 rethrow=0 return_oop=0}
│││ ; - java.lang.invoke.VarHandleLongs$Array::setOpaque@34 (line 601)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIJ_V@37 (line 763)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@29 (line 132)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.04% │││ 0x00007fc1980f0ff0: lea r10,[r12+r9*8] ;*invokestatic checkIndex {reexecute=0 rethrow=0 return_oop=0}
│││ ; - java.lang.invoke.VarHandleLongs$Array::setOpaque@18 (line 602)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIJ_V@37 (line 763)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@29 (line 132)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.35% │││ 0x00007fc1980f0ff4: mov QWORD PTR [r10+r13*8+0x10],0x270f
│││ ;*invokevirtual putLongOpaque {reexecute=0 rethrow=0 return_oop=0}
│││ ; - java.lang.invoke.VarHandleLongs$Array::setOpaque@34 (line 601)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIJ_V@37 (line 763)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@29 (line 132)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
8.25% │││ 0x00007fc1980f0ffd: mov ecx,DWORD PTR [r12+rbx*8+0x20]
│││ ;*getfield taskNameOrMarkers {reexecute=0 rethrow=0 return_oop=0}
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@36 (line 133)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
3.65% │││ 0x00007fc1980f1002: mov r9d,DWORD PTR [r12+rcx*8+0xc]
│││ ;*arraylength {reexecute=0 rethrow=0 return_oop=0}
│││ ; - java.lang.invoke.VarHandleObjects$Array::setOpaque@21 (line 459)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIL_V@37 (line 659)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@43 (line 133)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
│││ ; implicit exception: dispatches to 0x00007fc1980f13fe
0.33% │││ 0x00007fc1980f1007: cmp r13d,r9d
0.02% │││ 0x00007fc1980f100a: jae 0x00007fc1980f1132
0.39% │││ 0x00007fc1980f1010: mov r10d,DWORD PTR [r12+rcx*8+0x8]
│││ ;*invokevirtual getClass {reexecute=0 rethrow=0 return_oop=0}
│││ ; - java.lang.invoke.VarHandleObjects$Array::runtimeTypeCheck@5 (line 404)
│││ ; - java.lang.invoke.VarHandleObjects$Array::setOpaque@44 (line 461)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIL_V@37 (line 659)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@43 (line 133)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
3.65% │││ 0x00007fc1980f1015: movsxd r9,r13d
3.20% │││ 0x00007fc1980f1018: shl r9,0x2 ;*lshl {reexecute=0 rethrow=0 return_oop=0}
│││ ; - java.lang.invoke.VarHandleObjects$Array::setOpaque@33 (line 460)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIL_V@37 (line 659)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@43 (line 133)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.04% │││ 0x00007fc1980f101c: cmp r10d,0x13e88 ; {metadata('java/lang/Object'[])}
│││ 0x00007fc1980f1023: jne 0x00007fc1980f11f8 ;*invokevirtual putObjectOpaque {reexecute=0 rethrow=0 return_oop=0}
│││ ; - java.lang.invoke.VarHandleObjects$Array::setOpaque@47 (line 459)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIL_V@37 (line 659)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@43 (line 133)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.25% │││ 0x00007fc1980f1029: lea r10,[r12+rcx*8] ;*if_acmpne {reexecute=0 rethrow=0 return_oop=0}
│││ ; - java.lang.invoke.VarHandleObjects$Array::runtimeTypeCheck@8 (line 404)
│││ ; - java.lang.invoke.VarHandleObjects$Array::setOpaque@44 (line 461)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIL_V@37 (line 659)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@43 (line 133)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
3.53% │││ 0x00007fc1980f102d: lea rbp,[r10+r9*1+0x10]
3.67% │││ 0x00007fc1980f1032: cmp BYTE PTR [r15+0x30],0x0
0.12% │││ 0x00007fc1980f1037: jne 0x00007fc1980f10b7
0.25% │││ 0x00007fc1980f1039: mov r9d,DWORD PTR [rsp+0x28]
3.98% │││ 0x00007fc1980f103e: mov DWORD PTR [rbp+0x0],r9d
7.41% │││ 0x00007fc1980f1042: mov r10,r9
0.12% │││ 0x00007fc1980f1045: shl r10,0x3
0.14% │││ 0x00007fc1980f1049: mov rcx,rbp
2.72% │││ 0x00007fc1980f104c: xor r10,rcx
4.57% │││ 0x00007fc1980f104f: shr r10,0x15
0.04% │││ 0x00007fc1980f1053: test r10,r10
╰││ 0x00007fc1980f1056: je 0x00007fc1980f0f71
││ 0x00007fc1980f105c: test r9d,r9d
╰│ 0x00007fc1980f105f: je 0x00007fc1980f0f71
│ 0x00007fc1980f1065: shr rcx,0x9
│ 0x00007fc1980f1069: movabs rdi,0x7fc18a5fd000
│ 0x00007fc1980f1073: add rdi,rcx
│ 0x00007fc1980f1076: cmp BYTE PTR [rdi],0x20
╰ 0x00007fc1980f1079: je 0x00007fc1980f0f71
0x00007fc1980f107f: mov r10,QWORD PTR [r15+0x80]
0x00007fc1980f1086: mov r9,QWORD PTR [r15+0x70]
....................................................................................................
93.94% <total for region 1>
....[Hottest Regions]...............................................................................
93.94% c2, level 4 io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub, version 537 (226 bytes)
3.29% [kernel.kallsyms] native_write_msr (5 bytes)
0.20% [kernel.kallsyms] __intel_pmu_enable_all.constprop.25 (0 bytes)
0.20% [kernel.kallsyms] __perf_event_task_sched_in (17 bytes)
0.18% [kernel.kallsyms] __perf_event_task_sched_in (62 bytes)
0.12% [kernel.kallsyms] rcu_all_qs (0 bytes)
0.10% libjvm.so ElfSymbolTable::lookup (54 bytes)
0.06% [kernel.kallsyms] __entry_trampoline_start (0 bytes)
0.06% [kernel.kallsyms] finish_task_switch (30 bytes)
0.06% [kernel.kallsyms] syscall_return_via_sysret (0 bytes)
0.04% [kernel.kallsyms] __entry_trampoline_start (0 bytes)
0.04% [kernel.kallsyms] do_syscall_64 (0 bytes)
0.04% [kernel.kallsyms] copyin (2 bytes)
0.04% [kernel.kallsyms] copy_user_enhanced_fast_string (11 bytes)
0.04% crc32c-intel.ko crc32c_pcl_intel_update (2 bytes)
0.04% libjvm.so Monitor::lock_without_safepoint_check (7 bytes)
0.04% libjvm.so xmlStream::write_text (0 bytes)
0.04% libc-2.28.so _IO_default_xsputn (12 bytes)
0.02% [kernel.kallsyms] __entry_trampoline_start (0 bytes)
0.02% [kernel.kallsyms] __entry_trampoline_start (0 bytes)
1.41% <...other 72 warm regions...>
....................................................................................................
99.96% <totals>
....[Hottest Methods (after inlining)]..............................................................
93.94% c2, level 4 io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub, version 537
3.29% [kernel.kallsyms] native_write_msr
0.37% [kernel.kallsyms] __perf_event_task_sched_in
0.20% [kernel.kallsyms] __intel_pmu_enable_all.constprop.25
0.14% [kernel.kallsyms] __entry_trampoline_start
0.12% [kernel.kallsyms] rcu_all_qs
0.10% libjvm.so ElfSymbolTable::lookup
0.08% [kernel.kallsyms] syscall_return_via_sysret
0.08% [kernel.kallsyms] finish_task_switch
0.06% libc-2.28.so _IO_default_xsputn
0.06% libjvm.so xmlStream::write_text
0.04% libjvm.so jio_print
0.04% [kernel.kallsyms] do_syscall_64
0.04% [kernel.kallsyms] copy_user_enhanced_fast_string
0.04% [kernel.kallsyms] vfs_write
0.04% crc32c-intel.ko crc32c_pcl_intel_update
0.04% libjvm.so Monitor::lock_without_safepoint_check
0.04% [kernel.kallsyms] copyin
0.04% [kernel.kallsyms] pipe_write
0.04% ext4.ko ext4_inode_csum.isra.62
1.18% <...other 60 warm methods...>
....................................................................................................
99.96% <totals>
....[Distribution by Source]........................................................................
93.94% c2, level 4
4.90% [kernel.kallsyms]
0.69% libjvm.so
0.18% libc-2.28.so
0.06% ext4.ko
0.06% interpreter
0.04% hsdis-amd64.so
0.04% libpthread-2.28.so
0.04% crc32c-intel.ko
0.02% c1, level 3
....................................................................................................
99.96% <totals>
Graal:
# JMH version: 1.21
# VM version: JDK 11.0.2, Java HotSpot(TM) 64-Bit Server VM, 11.0.2+9-LTS
# VM invoker: /home/carl/bin/jdk-11.0.2/bin/java
# VM options: -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI -Dgraal.PrintCompilation=true -XX:+UseJVMCICompiler -XX:+LogCompilation -XX:LogFile=/tmp/blah.txt -XX:+PrintAssembly -XX:+PrintInterpreter -XX:+PrintNMethods -XX:+PrintNativeNMethods -XX:+PrintSignatureHandlers -XX:+PrintAdapterHandlers -XX:+PrintStubCode -XX:+PrintCompilation -XX:+PrintInlining -XX:+TraceClassLoading -XX:PrintAssemblyOptions=syntax -XX:PrintAssemblyOptions=intel
# Warmup: 10 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: io.perfmark.java9.VarHandleMarkHolderBenchmark.link
# Run progress: 25.00% complete, ETA 00:02:54
# Fork: 1 of 1
# Preparing profilers: LinuxPerfAsmProfiler
# Profilers consume stdout and stderr from target VM, use -v EXTRA to copy to console
# Warmup Iteration 1: 123.955 ns/op
# Warmup Iteration 2: 29.798 ns/op]
# Warmup Iteration 3: 8.086 ns/ops]
# Warmup Iteration 4: 7.503 ns/ops]
# Warmup Iteration 5: 7.226 ns/ops]
# Warmup Iteration 6: 7.717 ns/ops]
# Warmup Iteration 7: 7.280 ns/op0s]
# Warmup Iteration 8: 8.462 ns/op1s]
# Warmup Iteration 9: 7.628 ns/op2s]
# Warmup Iteration 10: 6.398 ns/op3s]
Iteration 1: 6.510 ns/opING [1m 14s]
Iteration 2: 6.300 ns/opING [1m 15s]
Iteration 3: 6.246 ns/opING [1m 16s]
Iteration 4: 6.197 ns/opING [1m 17s]
Iteration 5: 6.350 ns/opING [1m 18s]
> Task :perfmark-java9:jmh
# Processing profiler results: LinuxPerfAsmProfiler
Result "io.perfmark.java9.VarHandleMarkHolderBenchmark.link":
6.321 ±(99.9%) 0.464 ns/op [Average]
(min, avg, max) = (6.197, 6.321, 6.510), stdev = 0.120
CI (99.9%): [5.857, 6.784] (assumes normal distribution)
Secondary result "io.perfmark.java9.VarHandleMarkHolderBenchmark.link:·asm":
PrintAssembly processed: 521375 total address lines.
Perf output processed (skipped 12.320 seconds):
Column 1: cycles (5178 events)
Hottest code regions (>10.00% "cycles" events):
....[Hottest Region 1]..............................................................................
jvmci, level 4, io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub, version 1925 (364 bytes)
0x00007f9775fe9569: mov QWORD PTR [rsp+0x30],r13
0x00007f9775fe956e: mov QWORD PTR [rsp+0x20],0x1
╭ 0x00007f9775fe9577: jmp 0x00007f9775fe96c4 ;*aload {reexecute=0 rethrow=0 return_oop=0}
│ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@13 (line 190)
│ 0x00007f9775fe957c: nop DWORD PTR [rax+0x0] ;*arraylength {reexecute=0 rethrow=0 return_oop=0}
│ ; - java.lang.invoke.VarHandleLongs$Array::setOpaque@14 (line 601)
│ ; - java.lang.invoke.VarHandleGuards::guard_LIJ_V@37 (line 763)
│ ; - io.perfmark.java9.VarHandleMarkHolder::link@29 (line 132)
│ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.10% │ ↗ 0x00007f9775fe9580: and r8,r9 ;*land {reexecute=0 rethrow=0 return_oop=0}
│ │ ; - io.perfmark.java9.VarHandleMarkHolder::link@15 (line 131)
│ │ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│ │ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
1.47% │ │ 0x00007f9775fe9583: mov r8d,r8d ;*l2i {reexecute=0 rethrow=0 return_oop=0}
│ │ ; - io.perfmark.java9.VarHandleMarkHolder::link@16 (line 131)
│ │ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│ │ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.31% │ │ 0x00007f9775fe9586: cmp ecx,r8d
│ │ 0x00007f9775fe9589: jbe 0x00007f9775fe9a1e ;*if_icmplt {reexecute=0 rethrow=0 return_oop=0}
│ │ ; - jdk.internal.util.Preconditions::checkIndex@6 (line 247)
│ │ ; - java.lang.invoke.VarHandleLongs$Array::setOpaque@18 (line 602)
│ │ ; - java.lang.invoke.VarHandleGuards::guard_LIJ_V@37 (line 763)
│ │ ; - io.perfmark.java9.VarHandleMarkHolder::link@29 (line 132)
│ │ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│ │ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
3.23% │ │ 0x00007f9775fe958f: mov ecx,DWORD PTR [rbx+0xc] ;*getfield MARKER {reexecute=0 rethrow=0 return_oop=0}
│ │ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@9 (line 78)
│ │ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.15% │ │ 0x00007f9775fe9592: shl rsi,0x3 ;*getfield tagIds {reexecute=0 rethrow=0 return_oop=0}
│ │ ; - io.perfmark.java9.VarHandleMarkHolder::link@23 (line 132)
│ │ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│ │ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
1.33% │ │ 0x00007f9775fe9596: movsxd rdi,r8d ;*i2l {reexecute=0 rethrow=0 return_oop=0}
│ │ ; - java.lang.invoke.VarHandleLongs$Array::setOpaque@21 (line 602)
│ │ ; - java.lang.invoke.VarHandleGuards::guard_LIJ_V@37 (line 763)
│ │ ; - io.perfmark.java9.VarHandleMarkHolder::link@29 (line 132)
│ │ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│ │ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.41% │ │ 0x00007f9775fe9599: mov QWORD PTR [rsi+rdi*8+0x10],0x270f
│ │ ;* unwind (locked if synchronized)
│ │ ; - jdk.internal.misc.Unsafe::putLongOpaque@-3
│ │ ; - java.lang.invoke.VarHandleLongs$Array::setOpaque@34 (line 601)
│ │ ; - java.lang.invoke.VarHandleGuards::guard_LIJ_V@37 (line 763)
│ │ ; - io.perfmark.java9.VarHandleMarkHolder::link@29 (line 132)
│ │ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│ │ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
5.18% │ │ 0x00007f9775fe95a2: mov esi,DWORD PTR [r11*8+0x20]
│ │ ;*getfield taskNameOrMarkers {reexecute=0 rethrow=0 return_oop=0}
│ │ ; - io.perfmark.java9.VarHandleMarkHolder::link@36 (line 133)
│ │ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│ │ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.17% │ │ 0x00007f9775fe95aa: mov edx,r11d
1.20% │ │ 0x00007f9775fe95ad: shl rdx,0x3 ;*getfield markHolder {reexecute=0 rethrow=0 return_oop=0}
│ │ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@1 (line 78)
│ │ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.25% │ │ 0x00007f9775fe95b1: mov eax,ecx
2.84% │ │ 0x00007f9775fe95b3: shl rax,0x3 ; ImmutableOopMap{rax=Oop rcx=NarrowOop rdx=Oop rbx=Oop rsi=NarrowOop r11=NarrowOop [80]=Oop [88]=Oop [96]=Oop }
│ │ ;*return {reexecute=1 rethrow=0 return_oop=0}
│ │ ; - java.lang.invoke.VarHandleLongs$Array::setOpaque@37 (line 604)
│ │ ; - java.lang.invoke.VarHandleGuards::guard_LIJ_V@37 (line 763)
│ │ ; - io.perfmark.java9.VarHandleMarkHolder::link@29 (line 132)
│ │ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│ │ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.12% │ │ 0x00007f9775fe95b7: mov ebp,DWORD PTR [rsi*8+0xc]
1.43% │ │ 0x00007f9775fe95be: mov ebx,DWORD PTR [rsi*8+0x8]
│ │ ;* unwind (locked if synchronized)
│ │ ; - org.graalvm.compiler.hotspot.replacements.HotSpotReplacementsUtil::loadHubIntrinsic@-3
│ │ ; - org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets::instanceofExact@39 (line 144)
│ │ ; - java.lang.invoke.VarHandleObjects$Array::setOpaque@8 (line 458)
│ │ ; - java.lang.invoke.VarHandleGuards::guard_LIL_V@37 (line 659)
│ │ ; - io.perfmark.java9.VarHandleMarkHolder::link@43 (line 133)
│ │ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│ │ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
1.68% │ │ 0x00007f9775fe95c5: cmp ebp,r8d
│ │ 0x00007f9775fe95c8: jle 0x00007f9775fe9997 ;*if_icmplt {reexecute=0 rethrow=0 return_oop=0}
│ │ ; - jdk.internal.util.Preconditions::checkIndex@6 (line 247)
│ │ ; - java.lang.invoke.VarHandleObjects$Array::setOpaque@25 (line 460)
│ │ ; - java.lang.invoke.VarHandleGuards::guard_LIL_V@37 (line 659)
│ │ ; - io.perfmark.java9.VarHandleMarkHolder::link@43 (line 133)
│ │ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│ │ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
2.95% │ │ 0x00007f9775fe95ce: cmp ebx,0x13e88 ; {metadata('java/lang/Object'[])}
│ │ 0x00007f9775fe95d4: jne 0x00007f9775fe99e6 ;*checkcast {reexecute=0 rethrow=0 return_oop=0}
│ │ ; - java.lang.invoke.VarHandleObjects$Array::setOpaque@8 (line 458)
│ │ ; - java.lang.invoke.VarHandleGuards::guard_LIL_V@37 (line 659)
│ │ ; - io.perfmark.java9.VarHandleMarkHolder::link@43 (line 133)
│ │ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│ │ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.73% │ │ 0x00007f9775fe95da: mov ebx,esi
1.24% │ │ 0x00007f9775fe95dc: shl rbx,0x3 ;*getfield taskNameOrMarkers {reexecute=0 rethrow=0 return_oop=0}
│ │ ; - io.perfmark.java9.VarHandleMarkHolder::link@36 (line 133)
│ │ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│ │ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.37% │ │ 0x00007f9775fe95e0: movsx esi,BYTE PTR [r15+0x30]
2.63% │ │ 0x00007f9775fe95e5: test esi,esi
│╭│ 0x00007f9775fe95e7: jne 0x00007f9775fe96f1 ;*ifeq {reexecute=0 rethrow=0 return_oop=0}
│││ ; - org.graalvm.compiler.hotspot.replacements.WriteBarrierSnippets::g1PreWriteBarrier@217 (line 200)
│││ ; - jdk.internal.misc.Unsafe::putObjectOpaque@-3
│││ ; - java.lang.invoke.VarHandleObjects$Array::setOpaque@47 (line 459)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIL_V@37 (line 659)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@43 (line 133)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.50% │││ 0x00007f9775fe95ed: mov QWORD PTR [rsp+0x18],rax
0.95% │││ 0x00007f9775fe95f2: mov QWORD PTR [rsp+0x10],rdx
0.44% │││ 0x00007f9775fe95f7: mov r14,rdi
2.70% │││ 0x00007f9775fe95fa: mov r13d,ecx
0.56% │││ 0x00007f9775fe95fd: mov DWORD PTR [rsp+0x4c],r8d
0.91% │││ 0x00007f9775fe9602: mov QWORD PTR [rsp+0x8],r9
0.23% │││ 0x00007f9775fe9607: mov DWORD PTR [rsp+0x38],r11d
2.78% │││ 0x00007f9775fe960c: mov DWORD PTR [rbx+r14*4+0x10],r13d
│││ ;* unwind (locked if synchronized)
│││ ; - jdk.internal.misc.Unsafe::putObjectOpaque@-3
│││ ; - java.lang.invoke.VarHandleObjects$Array::setOpaque@47 (line 459)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIL_V@37 (line 659)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@43 (line 133)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.54% │││ 0x00007f9775fe9611: lea rsi,[rbx+r14*4+0x10]
1.20% │││ 0x00007f9775fe9616: xor rsi,QWORD PTR [rsp+0x18] ;*invokeinterface xor {reexecute=0 rethrow=0 return_oop=0}
│││ ; - org.graalvm.compiler.hotspot.replacements.WriteBarrierSnippets::g1PostWriteBarrier@151 (line 260)
│││ ; - jdk.internal.misc.Unsafe::putObjectOpaque@-3
│││ ; - java.lang.invoke.VarHandleObjects$Array::setOpaque@47 (line 459)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIL_V@37 (line 659)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@43 (line 133)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.31% │││ 0x00007f9775fe961b: test rsi,0xffffffffffe00000
2.78% │││ 0x00007f9775fe9622: mov r13,QWORD PTR [rsp+0x18]
0.56% │││ 0x00007f9775fe9627: je 0x00007f9775fe9747 ;*ifeq {reexecute=0 rethrow=0 return_oop=0}
│││ ; - org.graalvm.compiler.hotspot.replacements.WriteBarrierSnippets::g1PostWriteBarrier@262 (line 275)
│││ ; - jdk.internal.misc.Unsafe::putObjectOpaque@-3
│││ ; - java.lang.invoke.VarHandleObjects$Array::setOpaque@47 (line 459)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIL_V@37 (line 659)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@43 (line 133)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
1.08% │││ 0x00007f9775fe962d: test r13,r13
│││ 0x00007f9775fe9630: je 0x00007f9775fe975b ;*ifeq {reexecute=0 rethrow=0 return_oop=0}
│││ ; - org.graalvm.compiler.hotspot.replacements.WriteBarrierSnippets::g1PostWriteBarrier@287 (line 279)
│││ ; - jdk.internal.misc.Unsafe::putObjectOpaque@-3
│││ ; - java.lang.invoke.VarHandleObjects$Array::setOpaque@47 (line 459)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIL_V@37 (line 659)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@43 (line 133)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.31% │││ 0x00007f9775fe9636: mov r10,QWORD PTR [rsp+0x30]
2.84% │││ 0x00007f9775fe963b: lea rsi,[rbx+r14*4+0x10]
0.54% │││ 0x00007f9775fe9640: shr rsi,0x9 ;*invokeinterface unsignedShiftRight {reexecute=0 rethrow=0 return_oop=0}
│││ ; - org.graalvm.compiler.hotspot.replacements.WriteBarrierSnippets::g1PostWriteBarrier@173 (line 264)
│││ ; - jdk.internal.misc.Unsafe::putObjectOpaque@-3
│││ ; - java.lang.invoke.VarHandleObjects$Array::setOpaque@47 (line 459)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIL_V@37 (line 659)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@43 (line 133)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
1.10% │││ 0x00007f9775fe9644: movsx r11d,BYTE PTR [rsi+r10*1]
0.44% │││ 0x00007f9775fe9649: cmp r11d,0x20
│││ 0x00007f9775fe964d: jne 0x00007f9775fe976f ;*ifeq {reexecute=0 rethrow=0 return_oop=0}
│││ ; - org.graalvm.compiler.hotspot.replacements.WriteBarrierSnippets::g1PostWriteBarrier@331 (line 284)
│││ ; - jdk.internal.misc.Unsafe::putObjectOpaque@-3
│││ ; - java.lang.invoke.VarHandleObjects$Array::setOpaque@47 (line 459)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIL_V@37 (line 659)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@43 (line 133)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
2.95% │││ 0x00007f9775fe9653: mov r8d,DWORD PTR [rsp+0x4c]
0.83% │││ 0x00007f9775fe9658: mov r11d,DWORD PTR [rsp+0x38]
1.16% │││ 0x00007f9775fe965d: mov rbx,r10 ;* unwind (locked if synchronized)
│││ ; - jdk.internal.misc.Unsafe::putObjectOpaque@-3
│││ ; - java.lang.invoke.VarHandleObjects$Array::setOpaque@47 (line 459)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIL_V@37 (line 659)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@43 (line 133)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.17% │││ 0x00007f9775fe9660: mov r10d,DWORD PTR [r11*8+0x34]
│││ ; ImmutableOopMap{r10=NarrowOop r11=NarrowOop r13=Oop [16]=Oop [80]=Oop [88]=Oop [96]=Oop }
│││ ;*return {reexecute=1 rethrow=0 return_oop=0}
│││ ; - java.lang.invoke.VarHandleObjects$Array::setOpaque@50 (line 462)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIL_V@37 (line 659)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@43 (line 133)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
2.57% │││ 0x00007f9775fe9668: cmp r8d,DWORD PTR [r10*8+0xc]
│││ 0x00007f9775fe9670: jge 0x00007f9775fe9a60
2.12% │││ 0x00007f9775fe9676: mov rsi,QWORD PTR [rsp+0x60]
0.33% │││ 0x00007f9775fe967b: shl r10,0x3 ;*getfield genOps {reexecute=0 rethrow=0 return_oop=0}
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@50 (line 134)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
2.84% │││ 0x00007f9775fe967f: mov QWORD PTR [r10+r14*8+0x10],0x8
│││ ;* unwind (locked if synchronized)
│││ ; - jdk.internal.misc.Unsafe::putLongOpaque@-3
│││ ; - java.lang.invoke.VarHandleLongs$Array::setOpaque@34 (line 601)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LIJ_V@37 (line 763)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@60 (line 134)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.87% │││ 0x00007f9775fe9688: mov r9,QWORD PTR [rsp+0x8]
1.18% │││ 0x00007f9775fe968d: inc r9 ;*ladd {reexecute=0 rethrow=0 return_oop=0}
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@70 (line 135)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
0.25% │││ 0x00007f9775fe9690: mov QWORD PTR [r11*8+0x18],r9
│││ ;* unwind (locked if synchronized)
│││ ; - jdk.internal.misc.Unsafe::putLongRelease@-3
│││ ; - java.lang.invoke.VarHandleLongs$FieldInstanceReadWrite::setRelease@19 (line 114)
│││ ; - java.lang.invoke.VarHandleGuards::guard_LJ_V@36 (line 177)
│││ ; - io.perfmark.java9.VarHandleMarkHolder::link@71 (line 135)
│││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
2.47% │││ 0x00007f9775fe9698: movsx r10d,BYTE PTR [rsi+0x94]
0.64% │││ 0x00007f9775fe96a0: movzx r10d,r10b ;*getfield isDone {reexecute=0 rethrow=0 return_oop=0}
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@25 (line 192)
1.27% │││ 0x00007f9775fe96a4: mov r11,QWORD PTR [rsp+0x20]
0.39% │││ 0x00007f9775fe96a9: inc r11 ;*ladd {reexecute=0 rethrow=0 return_oop=0}
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@21 (line 191)
2.26% │││ 0x00007f9775fe96ac: test r10d,r10d
│││ 0x00007f9775fe96af: jne 0x00007f9775fe9835 ;*ifeq {reexecute=0 rethrow=0 return_oop=0}
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@28 (line 192)
0.44% │││ 0x00007f9775fe96b5: mov r10,QWORD PTR [r15+0x108]
│││ ; ImmutableOopMap{rsi=Oop [80]=Oop [88]=Oop [96]=Oop }
│││ ;*ifeq {reexecute=1 rethrow=0 return_oop=0}
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@28 (line 192)
1.26% │││ 0x00007f9775fe96bc: test DWORD PTR [r10],eax ; {poll}
0.44% │││ 0x00007f9775fe96bf: mov QWORD PTR [rsp+0x20],r11 ;*aload {reexecute=0 rethrow=0 return_oop=0}
│││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@13 (line 190)
2.92% ↘││ 0x00007f9775fe96c4: mov rbx,QWORD PTR [rsp+0x50]
0.73% ││ 0x00007f9775fe96c9: mov r11d,DWORD PTR [rbx+0x10]
││ ; ImmutableOopMap{rbx=Oop r11=NarrowOop [80]=Oop [88]=Oop [96]=Oop }
││ ;*aload {reexecute=1 rethrow=0 return_oop=0}
││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@13 (line 190)
1.00% ││ 0x00007f9775fe96cd: mov esi,DWORD PTR [r11*8+0x28]
0.68% ││ 0x00007f9775fe96d5: mov r8,QWORD PTR [r11*8+0x10]
││ ;*getfield maxEventsMax {reexecute=0 rethrow=0 return_oop=0}
││ ; - io.perfmark.java9.VarHandleMarkHolder::link@12 (line 131)
││ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
2.90% ││ 0x00007f9775fe96dd: mov r9,QWORD PTR [r11*8+0x18]
││ ; ImmutableOopMap{rbx=Oop rsi=NarrowOop r11=NarrowOop [80]=Oop [88]=Oop [96]=Oop }
││ ;*aload {reexecute=1 rethrow=0 return_oop=0}
││ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@13 (line 190)
0.79% ││ 0x00007f9775fe96e5: mov ecx,DWORD PTR [rsi*8+0xc]
10.93% │╰ 0x00007f9775fe96ec: jmp 0x00007f9775fe9580 ;*arraylength {reexecute=0 rethrow=0 return_oop=0}
│ ; - java.lang.invoke.VarHandleLongs$Array::setOpaque@14 (line 601)
│ ; - java.lang.invoke.VarHandleGuards::guard_LIJ_V@37 (line 763)
│ ; - io.perfmark.java9.VarHandleMarkHolder::link@29 (line 132)
│ ; - io.perfmark.java9.VarHandleMarkHolderBenchmark::link@12 (line 78)
│ ; - io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub@15 (line 190)
↘ 0x00007f9775fe96f1: lea rsi,[rbx+rdi*4+0x10]
0x00007f9775fe96f6: mov esi,DWORD PTR [rsi]
0x00007f9775fe96f8: shl rsi,0x3 ;*invokevirtual readObject {reexecute=0 rethrow=0 return_oop=0}
; - org.graalvm.compiler.hotspot.replacements.WriteBarrierSnippets::g1PreWriteBarrier@236 (line 204)
; - jdk.internal.misc.Unsafe::putObjectOpaque@-3
....................................................................................................
92.95% <total for region 1>
....[Hottest Regions]...............................................................................
92.95% jvmci, level 4 io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub, version 1925 (364 bytes)
2.41% [kernel.kallsyms] native_write_msr (5 bytes)
0.27% [kernel.kallsyms] syscall_return_via_sysret (3 bytes)
0.15% libjvm.so ElfSymbolTable::lookup (32 bytes)
0.15% libjvm.so fileStream::write (65 bytes)
0.14% [kernel.kallsyms] __entry_trampoline_start (70 bytes)
0.08% [kernel.kallsyms] __intel_pmu_enable_all.constprop.25 (0 bytes)
0.06% [kernel.kallsyms] __task_pid_nr_ns (0 bytes)
0.06% [kernel.kallsyms] __fget_light (2 bytes)
0.06% [kernel.kallsyms] common_file_perm (14 bytes)
0.06% [kernel.kallsyms] mutex_unlock (0 bytes)
0.06% [kernel.kallsyms] mutex_lock (0 bytes)
0.06% [kernel.kallsyms] entry_SYSCALL_64_after_hwframe (27 bytes)
0.06% interpreter method entry point (kind = zerolocals) (8 bytes)
0.06% hsdis-amd64.so print_insn (34 bytes)
0.06% libpthread-2.28.so __libc_write (16 bytes)
0.06% ld-2.28.so __tls_get_addr (21 bytes)
0.04% [kernel.kallsyms] native_read_msr (0 bytes)
0.04% [kernel.kallsyms] __fget (30 bytes)
0.04% [kernel.kallsyms] __fget (23 bytes)
3.15% <...other 146 warm regions...>
....................................................................................................
100.00% <totals>
....[Hottest Methods (after inlining)]..............................................................
92.95% jvmci, level 4 io.perfmark.java9.generated.VarHandleMarkHolderBenchmark_link_jmhTest::link_avgt_jmhStub, version 1925
2.41% [kernel.kallsyms] native_write_msr
0.31% [kernel.kallsyms] syscall_return_via_sysret
0.17% libjvm.so fileStream::write
0.15% libjvm.so ElfSymbolTable::lookup
0.15% [kernel.kallsyms] __entry_trampoline_start
0.10% [kernel.kallsyms] __task_pid_nr_ns
0.10% interpreter method entry point (kind = zerolocals)
0.10% interpreter invokevirtual 182 invokevirtual
0.08% [kernel.kallsyms] __intel_pmu_enable_all.constprop.25
0.08% [kernel.kallsyms] __fget
0.08% hsdis-amd64.so print_insn
0.06% [kernel.kallsyms] mutex_lock
0.06% libpthread-2.28.so __libc_write
0.06% ld-2.28.so __tls_get_addr
0.06% [kernel.kallsyms] mutex_unlock
0.06% [kernel.kallsyms] common_file_perm
0.06% [kernel.kallsyms] __fget_light
0.06% [kernel.kallsyms] entry_SYSCALL_64_after_hwframe
0.06% libjvm.so xmlStream::write_text
2.86% <...other 125 warm methods...>
....................................................................................................
100.00% <totals>
....[Distribution by Source]........................................................................
92.95% jvmci, level 4
4.69% [kernel.kallsyms]
1.10% libjvm.so
0.35% libc-2.28.so
0.31% interpreter
0.15% ext4.ko
0.12% hsdis-amd64.so
0.10% libpthread-2.28.so
0.06% c1, level 1
0.06% ld-2.28.so
0.04% perf-13702.map
0.04% crc32c-intel.ko
0.02% i915.ko
0.02% jbd2.ko
....................................................................................................
100.00% <totals>