Open harryyu1994 opened 4 years ago
Confidence interval is quite large for throughput 1.6% - 1.9% The maximum value is about the same for both Java8 and Java11, the minimum is better for Java8. It is going to be difficult to track this one because of the fluctuation.
Have you pinned the JVM to a specific set of processors?
Let's use only warm compilations with -Xjit:initialOptLevel=warm,inhibitRecompilation and maybe do the same for the cold opt level, hoping the gap will stay the same.
How is the stimulus/load applied? We typically so 1 client for 60 seconds followed by 2-3 bursts of 50 clients for 180 sec.
Have you pinned the JVM to a specific set of processors?
my $wasCPUSet = "0,1,32,33"; my $db2CPUSet = "16-23"; my $clientCPUSet = "48-55";
How is the stimulus/load applied? We typically so 1 client for 60 seconds followed by 2-3 bursts of 50 clients for 180 sec.
10 runs: 1 cold run + 9 warm runs Each run is 50 clients for 300 seconds (No 1-client involved)
I will change the configuration so that we do a single 1-client run for 60 seconds then 3 50-client runs each for 180 seconds. @mpirvu Is this what's preferred?
I assume that each of the 10 runs is a new JVM invocation. If that is the case, then measuring throughput for the first 300 seconds captures the rampup phase were all compilations are happeining. If Java11 is heavier in compilation it may show a lower throughput. I woud like to separate the concerns by using a warm-up period of 60 seconds with one client, followed by 1 or 2 periods of 3 minutes with 50 clients. If needed I have the script that achieves that.
Warm compilations only:
Compilation levels:
Level=2 numComp=12974
Run 9 Throughput=3093.4 WS=603700 CPU=130928 Errors=0
Results for JDK=/home/harryayu2/sdks/java8 jvmOpts=-Xnoaot -Xmx1G -Xjit:initialOptLevel=warm,inhibitRecompilation
Throughput avg=3078.88 min=3031.60 max=3113.60 stdDev=28.6 maxVar=2.70% confInt=0.58% samples= 9
Intermediate results:
Run 0 131.9 2650.3 3086.8 3053.8 Avg=3054 CPU=124467 ms Footprint=590964 KB
Run 1 163.8 2709.5 3074.7 3087.8 Avg=3088 CPU=125897 ms Footprint=612708 KB
Run 2 144.4 2679.7 3139.5 3110.3 Avg=3110 CPU=126396 ms Footprint=596324 KB
Run 3 166.1 2713.1 3112.7 3085.4 Avg=3085 CPU=121880 ms Footprint=602964 KB
Run 4 153.0 2597.6 3095.2 3113.6 Avg=3114 CPU=130583 ms Footprint=596524 KB
Run 5 138.0 2697.6 3112.3 3087.7 Avg=3088 CPU=124150 ms Footprint=595776 KB
Run 6 172.4 2696.0 3028.2 3031.6 Avg=3032 CPU=128667 ms Footprint=603276 KB
Run 7 162.7 2689.5 3071.9 3046.3 Avg=3046 CPU=125665 ms Footprint=599936 KB
Run 8 172.1 2687.3 3123.1 3093.4 Avg=3093 CPU=130928 ms Footprint=603700 KB
CompTime avg=126514.78 min=121880.00 max=130928.00 stdDev=3021.7 maxVar=7.42% confInt=1.48% samples= 9
Footprint avg=600241.33 min=590964.00 max=612708.00 stdDev=6317.3 maxVar=3.68% confInt=0.65% samples= 9
Level=2 numComp=13305
Run 9 Throughput=2964 WS=609736 CPU=137585 Errors=0
Results for JDK=/home/harryayu2/sdks/java11 jvmOpts=-Xnoaot -Xmx1G -Xjit:initialOptLevel=warm,inhibitRecompilation
Throughput avg=2948.32 min=2884.70 max=3001.30 stdDev=36.5 maxVar=4.04% confInt=0.77% samples= 9
Intermediate results:
Run 0 143.1 2540.5 3009.1 2955.1 Avg=2955 CPU=134932 ms Footprint=605224 KB
Run 1 150.0 2536.2 2956.6 2921.2 Avg=2921 CPU=134527 ms Footprint=616476 KB
Run 2 155.2 2570.2 2983.2 2973.2 Avg=2973 CPU=134011 ms Footprint=620252 KB
Run 3 172.6 2574.1 2954.6 2968.5 Avg=2968 CPU=134670 ms Footprint=608428 KB
Run 4 139.1 2534.0 2940.8 2907.9 Avg=2908 CPU=135342 ms Footprint=616440 KB
Run 5 134.7 2516.4 2996.2 3001.3 Avg=3001 CPU=139006 ms Footprint=612512 KB
Run 6 145.5 2568.8 2975.8 2884.7 Avg=2885 CPU=134862 ms Footprint=623276 KB
Run 7 143.9 2576.5 2951.9 2959.0 Avg=2959 CPU=136426 ms Footprint=612496 KB
Run 8 170.8 2519.2 2961.8 2964.0 Avg=2964 CPU=137585 ms Footprint=609736 KB
CompTime avg=135706.78 min=134011.00 max=139006.00 stdDev=1647.7 maxVar=3.73% confInt=0.75% samples= 9
Footprint avg=613871.11 min=605224.00 max=623276.00 stdDev=5785.6 maxVar=2.98% confInt=0.58% samples= 9
Actually since I'm not even using AOT, what effect does the 1-client warmup have? Should I turn on AOT and SCC? @mpirvu
Is what we are trying to compare here the code quality of the optimizer?
4.2% gap with just warm compilations.
Actually since I'm not even using AOT, what effect does the 1-client warmup have
It excludes the time to perform compilations. Assuming Java11 takes more CPU to compile, but eventually reaches the same peak throughput, it will appear as a false regression because that CPU is taken at the expense of application threads.
Java11 consumes 7% more CPU for compilations.
Let's do the same for cold because cold compilations are easier to investigate when we generate compilation logs.
Cold Compilations Only
Compilation levels:
Level=1 numComp=14200
Run 9 Throughput=2149.4 WS=493948 CPU=19983 Errors=0
Results for JDK=/home/harryayu2/sdks/java8 jvmOpts=-Xnoaot -Xmx1G -Xjit:initialOptLevel=cold,inhibitRecompilation
Throughput avg=2149.14 min=2117.90 max=2171.80 stdDev=16.4 maxVar=2.54% confInt=0.47% samples= 9
Intermediate results:
Run 0 174.6 2007.0 2120.1 2135.1 Avg=2135 CPU=20094 ms Footprint=484808 KB
Run 1 174.1 2024.7 2176.2 2169.8 Avg=2170 CPU=19854 ms Footprint=501544 KB
Run 2 181.8 2028.6 2142.4 2171.8 Avg=2172 CPU=20226 ms Footprint=512856 KB
Run 3 165.6 1996.0 2134.4 2147.5 Avg=2148 CPU=20172 ms Footprint=510984 KB
Run 4 181.3 2038.5 2143.6 2154.0 Avg=2154 CPU=20086 ms Footprint=503836 KB
Run 5 170.4 2042.5 2131.3 2150.3 Avg=2150 CPU=20171 ms Footprint=506524 KB
Run 6 188.1 2047.0 2127.4 2117.9 Avg=2118 CPU=20052 ms Footprint=512732 KB
Run 7 184.7 2035.7 2164.3 2146.5 Avg=2146 CPU=20001 ms Footprint=489088 KB
Run 8 178.0 2035.5 2106.5 2149.4 Avg=2149 CPU=19983 ms Footprint=493948 KB
CompTime avg=20071.00 min=19854.00 max=20226.00 stdDev=114.6 maxVar=1.87% confInt=0.35% samples= 9
Footprint avg=501813.33 min=484808.00 max=512856.00 stdDev=10395.9 maxVar=5.79% confInt=1.28% samples= 9
Compilation levels:
Level=1 numComp=14478
Level=2 numComp=2
Run 9 Throughput=2005.6 WS=512672 CPU=20038 Errors=0
Results for JDK=/home/harryayu2/sdks/java11 jvmOpts=-Xnoaot -Xmx1G -Xjit:initialOptLevel=cold,inhibitRecompilation
Throughput avg=2040.53 min=2005.60 max=2062.90 stdDev=17.3 maxVar=2.86% confInt=0.53% samples= 9
Intermediate results:
Run 0 175.3 1909.7 2022.9 2035.1 Avg=2035 CPU=20312 ms Footprint=519608 KB
Run 1 168.3 1958.3 2066.5 2057.8 Avg=2058 CPU=20521 ms Footprint=539056 KB
Run 2 170.9 1927.6 2017.4 2062.9 Avg=2063 CPU=20293 ms Footprint=509676 KB
Run 3 176.2 1912.2 2029.3 2030.1 Avg=2030 CPU=20850 ms Footprint=520340 KB
Run 4 170.5 1931.6 2040.2 2041.8 Avg=2042 CPU=20712 ms Footprint=501584 KB
Run 5 153.3 1903.1 2051.0 2046.2 Avg=2046 CPU=20654 ms Footprint=538680 KB
Run 6 173.3 1933.1 2056.1 2052.4 Avg=2052 CPU=20335 ms Footprint=517460 KB
Run 7 144.8 1896.6 2053.5 2032.9 Avg=2033 CPU=20610 ms Footprint=528204 KB
Run 8 131.9 1857.6 1998.6 2005.6 Avg=2006 CPU=20038 ms Footprint=512672 KB
CompTime avg=20480.56 min=20038.00 max=20850.00 stdDev=254.7 maxVar=4.05% confInt=0.77% samples= 9
Footprint avg=520808.89 min=501584.00 max=539056.00 stdDev=12647.4 maxVar=7.47% confInt=1.51% samples= 9
5% gap with just cold compilations and the CI has been reduced to about 0.5%. I wonder if the trend continues if we use noOpt.
NoOpt Compilations Only
Compilation levels:
Level=0 numComp=15008
Run 9 Throughput=1398.2 WS=437808 CPU=9277 Errors=0
Results for JDK=/home/harryayu2/sdks/java8 jvmOpts=-Xnoaot -Xmx1G -Xjit:initialOptLevel=noOpt,inhibitRecompilation
Throughput avg=1397.88 min=1373.90 max=1419.80 stdDev=13.6 maxVar=3.34% confInt=0.60% samples= 9
Intermediate results:
Run 0 121.3 1317.7 1392.9 1409.5 Avg=1410 CPU=8810 ms Footprint=425072 KB
Run 1 140.7 1326.3 1384.3 1419.8 Avg=1420 CPU=9341 ms Footprint=444228 KB
Run 2 145.0 1347.0 1394.5 1398.6 Avg=1399 CPU=9308 ms Footprint=439996 KB
Run 3 139.6 1320.5 1387.0 1384.5 Avg=1384 CPU=9345 ms Footprint=428268 KB
Run 4 139.3 1340.5 1403.0 1390.5 Avg=1390 CPU=9309 ms Footprint=439788 KB
Run 5 139.7 1312.4 1357.1 1373.9 Avg=1374 CPU=9430 ms Footprint=428868 KB
Run 6 150.6 1317.9 1395.0 1403.6 Avg=1404 CPU=9265 ms Footprint=447396 KB
Run 7 151.1 1345.8 1410.5 1402.3 Avg=1402 CPU=9390 ms Footprint=449932 KB
Run 8 151.4 1322.9 1373.6 1398.2 Avg=1398 CPU=9277 ms Footprint=437808 KB
CompTime avg=9275.00 min=8810.00 max=9430.00 stdDev=182.0 maxVar=7.04% confInt=1.22% samples= 9
Footprint avg=437928.44 min=425072.00 max=449932.00 stdDev=8816.6 maxVar=5.85% confInt=1.25% samples= 9
Compilation levels:
Level=0 numComp=15458
Level=2 numComp=2
Run 9 Throughput=1342.8 WS=452080 CPU=9609 Errors=0
Results for JDK=/home/harryayu2/sdks/java11 jvmOpts=-Xnoaot -Xmx1G -Xjit:initialOptLevel=noOpt,inhibitRecompilation
Throughput avg=1351.71 min=1336.40 max=1366.50 stdDev=8.9 maxVar=2.25% confInt=0.41% samples= 9
Intermediate results:
Run 0 94.9 1285.3 1358.4 1353.1 Avg=1353 CPU=9633 ms Footprint=450616 KB
Run 1 136.5 1287.4 1322.7 1354.2 Avg=1354 CPU=9549 ms Footprint=448064 KB
Run 2 151.4 1267.5 1328.1 1346.3 Avg=1346 CPU=9622 ms Footprint=460196 KB
Run 3 144.7 1289.4 1358.9 1366.5 Avg=1366 CPU=9567 ms Footprint=472240 KB
Run 4 146.0 1304.1 1332.8 1336.4 Avg=1336 CPU=9533 ms Footprint=456364 KB
Run 5 129.5 1263.7 1349.2 1352.0 Avg=1352 CPU=9719 ms Footprint=474816 KB
Run 6 144.2 1287.4 1341.5 1356.5 Avg=1356 CPU=9469 ms Footprint=454956 KB
Run 7 114.8 1284.2 1366.5 1357.6 Avg=1358 CPU=9685 ms Footprint=441896 KB
Run 8 141.7 1278.0 1335.0 1342.8 Avg=1343 CPU=9609 ms Footprint=452080 KB
CompTime avg=9598.44 min=9469.00 max=9719.00 stdDev=77.7 maxVar=2.64% confInt=0.50% samples= 9
Footprint avg=456803.11 min=441896.00 max=474816.00 stdDev=10822.8 maxVar=7.45% confInt=1.47% samples= 9
3.9% gap with NoOpt compilations and I'm guessing the CI is low enough.
This to me smells like path length. At this point we can generate a profile (either tprof or linux perf) and see where the biggest discrepancies are
Results for JDK=/home/harryayu2/sdks/java8 jvmOpts=-Xnoaot -Xmx1G -Xjit:initialOptLevel=noOpt,inhibitRecompilation -agentlib:jprof=tprof,logpath=/home/harryayu2/scripts
Throughput avg=1393.55 min=1380.50 max=1406.60 stdDev=18.5 maxVar=1.89% confInt=5.91% samples= 2
Intermediate results:
Run 0 149.9 1313.6 1393.3 1406.6 Avg=1407 CPU=9255 ms Footprint=426448 KB
Run 1 154.4 1332.7 1390.3 1380.5 Avg=1380 CPU=9424 ms Footprint=455220 KB
CompTime avg=9339.50 min=9255.00 max=9424.00 stdDev=119.5 maxVar=1.83% confInt=5.71% samples= 2
Footprint avg=440834.00 min=426448.00 max=455220.00 stdDev=20344.9 maxVar=6.75% confInt=20.60% samples= 2
Results for JDK=/home/harryayu2/sdks/java11 jvmOpts=-Xnoaot -Xmx1G -Xjit:initialOptLevel=noOpt,inhibitRecompilation -agentlib:jprof=tprof,logpath=/home/harryayu2/scripts
Throughput avg=1334.35 min=1319.30 max=1349.40 stdDev=21.3 maxVar=2.28% confInt=7.12% samples= 2
Intermediate results:
Run 0 145.5 1266.4 1322.9 1349.4 Avg=1349 CPU=9471 ms Footprint=444768 KB
Run 1 148.9 1249.6 1326.8 1319.3 Avg=1319 CPU=9710 ms Footprint=466704 KB
CompTime avg=9590.50 min=9471.00 max=9710.00 stdDev=169.0 maxVar=2.52% confInt=7.87% samples= 2
Footprint avg=455736.00 min=444768.00 max=466704.00 stdDev=15511.1 maxVar=4.93% confInt=15.20% samples= 2
Java 8
PID 666337 18.43 java_de6d
MOD 460492 12.74 JITCODE
MOD 103048 2.85 vmlinux
MOD 41823 1.16 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9vm29.so
MOD 18486 0.51 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9gc29.so
MOD 8169 0.23 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9jit29.so
MOD 6929 0.19 [ip_tables]
MOD 6325 0.17 [nf_conntrack]
MOD 5558 0.15 /usr/lib64/libc-2.17.so
MOD 4987 0.14 /usr/lib64/libpthread-2.17.so
MOD 1423 0.04 /home/harryayu2/sdks/java8/jre/lib/amd64/libnet.so
MOD 1266 0.04 [vdso]
MOD 817 0.02 [nf_conntrack_ipv4]
MOD 743 0.02 [nf_nat_ipv4]
MOD 710 0.02 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libjclse29.so
MOD 610 0.02 [xt_conntrack]
MOD 553 0.02 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9thr29.so
MOD 484 0.01 [nf_nat]
MOD 438 0.01 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9prt29.so
MOD 415 0.01 [iptable_mangle]
MOD 309 0.01 [iptable_raw]
MOD 301 0.01 [iptable_nat]
MOD 301 0.01 /home/harryayu2/sdks/java8/jre/lib/amd64/j9vm/libjvm.so
MOD 292 0.01 /home/harryayu2/sdks/java8/jre/lib/amd64/libjava.so
MOD 246 0.01 /home/harryayu2/sdks/java8/jre/lib/amd64/libnio.so
MOD 234 0.01 [nf_defrag_ipv4]
MOD 227 0.01 [iptable_security]
MOD 224 0.01 [iptable_filter]
MOD 217 0.01 /usr/lib64/libm-2.17.so
MOD 214 0.01 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libjvm.so
MOD 213 0.01 /usr/lib64/libcrypto.so.1.0.2k
MOD 105 0.00 /home/harryayu2/sdks/java8/jre/lib/amd64/libzip.so
MOD 77 0.00 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9trc29.so
MOD 57 0.00 /opt/pi-75050cffff_retry/Dpiperf/lib/libperfutil.so
MOD 20 0.00 /home/harryayu2/sdks/java8/jre/lib/amd64/libjncrypto.so
MOD 15 0.00 /usr/lib64/ld-2.17.so
MOD 2 0.00 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9hookable29.so
MOD 2 0.00 /opt/pi-75050cffff_retry/Dpiperf/lib/libjprof.so
MOD 2 0.00 [igb]
MOD 1 0.00 [usbnet]
MOD 1 0.00 /usr/lib64/libgcc_s-4.8.5-20150702.so.1
MOD 1 0.00 NoModule
Java 11
PID 655166 18.25 java_1ca2
MOD 472834 13.17 JITCODE
MOD 88390 2.46 vmlinux
MOD 32248 0.90 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9vm29.so
MOD 16820 0.47 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9gc29.so
MOD 7814 0.22 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9jit29.so
MOD 7231 0.20 /usr/lib64/libc-2.17.so
MOD 6911 0.19 [ip_tables]
MOD 6634 0.18 [nf_conntrack]
MOD 4277 0.12 /usr/lib64/libpthread-2.17.so
MOD 1814 0.05 [vdso]
MOD 1605 0.04 /home/harryayu2/sdks/java11/lib/compressedrefs/libjclse29.so
MOD 1587 0.04 /home/harryayu2/sdks/java11/lib/libnet.so
MOD 875 0.02 [nf_conntrack_ipv4]
MOD 719 0.02 [nf_nat_ipv4]
MOD 553 0.02 [xt_conntrack]
MOD 541 0.02 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9prt29.so
MOD 434 0.01 [nf_nat]
MOD 403 0.01 [iptable_mangle]
MOD 387 0.01 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9thr29.so
MOD 360 0.01 /home/harryayu2/sdks/java11/lib/compressedrefs/libjvm.so
MOD 340 0.01 /home/harryayu2/sdks/java11/lib/server/libjvm.so
MOD 338 0.01 [iptable_raw]
MOD 292 0.01 [iptable_security]
MOD 289 0.01 [iptable_nat]
MOD 274 0.01 [iptable_filter]
MOD 230 0.01 [nf_defrag_ipv4]
MOD 205 0.01 /usr/lib64/libcrypto.so.1.0.2k
MOD 192 0.01 /usr/lib64/libm-2.17.so
MOD 192 0.01 /home/harryayu2/sdks/java11/lib/libnio.so
MOD 178 0.00 /home/harryayu2/sdks/java11/lib/libjava.so
MOD 98 0.00 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9trc29.so
MOD 61 0.00 /opt/pi-75050cffff_retry/Dpiperf/lib/libperfutil.so
MOD 18 0.00 /home/harryayu2/sdks/java11/lib/libjncrypto.so
MOD 15 0.00 /usr/lib64/ld-2.17.so
MOD 3 0.00 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9hookable29.so
MOD 2 0.00 NoModule
MOD 1 0.00 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9jvmti29.so
MOD 1 0.00 /usr/lib64/libgcc_s-4.8.5-20150702.so.1
java8
PID 666337 18.43 java_de6d
MOD 460492 12.74 JITCODE
SYM 8445 0.23 sun/nio/cs/ISO_8859_1$Encoder.encodeISOArray([CI[BII)I_7ff2c3a25928
SYM 6500 0.18 java/lang/Object.<init>()V_7ff2c38047a0
SYM 6389 0.18 java/util/HashMap.getNode(ILjava/lang/Object;)Ljava/util/HashMap$Node;_7ff2c380ee28
SYM 3927 0.11 java/lang/String.lengthInternal()I_7ff2c3801280
SYM 3579 0.10 com/ibm/websphere/ras/TraceComponent.isAnyTracingEnabled()Z_7ff2c3835938
SYM 3339 0.09 java/util/HashMap.hash(Ljava/lang/Object;)I_7ff2c380a1a0
SYM 2964 0.08 java/lang/String.equals(Ljava/lang/Object;)Z_7ff2c3808180
SYM 2885 0.08 java/lang/ThreadLocal$ThreadLocalMap.getEntry(Ljava/lang/ThreadLocal;)Ljava/lang/ThreadLocal$ThreadLocalMap$Entry;_7ff2c3827be0
SYM 2799 0.08 java/lang/J9VMInternals.fastIdentityHashCode(Ljava/lang/Object;)I_7ff2c3814980
SYM 2626 0.07 java/lang/String.charAtInternal(I[C)C_7ff2c3803a88
SYM 2371 0.07 java/lang/String.regionMatchesInternal(Ljava/lang/String;Ljava/lang/String;[C[CIII)Z_7ff2c38087e8
SYM 2173 0.06 java/lang/String.charAt(I)C_7ff2c3803b20
SYM 2116 0.06 java/lang/String.hashCode()I_7ff2c3808500
SYM 2033 0.06 java/util/concurrent/ConcurrentHashMap.get(Ljava/lang/Object;)Ljava/lang/Object;_7ff2c384f6a0
SYM 1888 0.05 java/util/HashMap.putVal(ILjava/lang/Object;Ljava/lang/Object;ZZ)Ljava/lang/Object;_7ff2c380b008
SYM 1614 0.04 java/util/concurrent/ConcurrentHashMap.tabAt([Ljava/util/concurrent/ConcurrentHashMap$Node;I)Ljava/util/concurrent/ConcurrentHashMap$Node;_7ff2c38276e0
SYM 1500 0.04 java/util/HashMap.get(Ljava/lang/Object;)Ljava/lang/Object;_7ff2c3813ce0
SYM 1454 0.04 com/ibm/db2/jcc/am/qo.b(IZ)V_7ff2c3abeca8
SYM 1365 0.04 java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;_7ff2c380e380
SYM 1286 0.04 java/util/HashMap.resize()[Ljava/util/HashMap$Node;_7ff2c3812440
SYM 1260 0.03 com/ibm/ejs/j2c/SharedPool.getSharedConnection(Ljava/lang/Object;Ljavax/security/auth/Subject;Ljavax/resource/spi/ConnectionRequestInfo;ZLjava/lang/String;II)Lcom/ibm/ws/j2c/MCWrapper;_7ff2c3b44d48
SYM 1193 0.03 java/lang/ThreadLocal.get()Ljava/lang/Object;_7ff2c3827a00
SYM 1150 0.03 com/ibm/wsspi/genericbnf/KeyMatcher$KeyBucket.match(Ljava/lang/String;II)Lcom/ibm/wsspi/genericbnf/GenericKeys;_7ff2c3a37f28
SYM 1145 0.03 com/ibm/db2/jcc/am/Agent.loggingEnabled()Z_7ff2c39ed140
SYM 1140 0.03 java/lang/StringBuilder.toString()Ljava/lang/String;_7ff2c381b6e0
SYM 1125 0.03 com/ibm/db2/jcc/t4/x.c()V_7ff2c3a3ab60
SYM 1097 0.03 sun/nio/cs/UTF_8$Decoder.decode([BII[C)I_7ff2c382d168
SYM 1051 0.03 java/lang/StringBuilder.ensureCapacityImpl(I)V_7ff2c381bac0
SYM 1042 0.03 java/util/Hashtable.get(Ljava/lang/Object;)Ljava/lang/Object;_7ff2c38074c0
SYM 1016 0.03 com/ibm/wsspi/webcontainer/util/BufferedWriter.write(Ljava/lang/String;II)V_7ff2c3ae8528
SYM 1003 0.03 java/lang/ThreadLocal.getMap(Ljava/lang/Thread;)Ljava/lang/ThreadLocal$ThreadLocalMap;_7ff2c3823cc0
SYM 933 0.03 java/lang/String.<init>([CIIZ)V_7ff2c380d1e8
SYM 932 0.03 java/lang/String.length()I_7ff2c3807740
SYM 928 0.03 org/apache/myfaces/view/facelets/tag/jsf/ComponentTagHandlerDelegate.apply(Ljavax/faces/view/facelets/FaceletContext;Ljavax/faces/component/UIComponent;)V_7ff2c3b06008
SYM 886 0.02 com/ibm/tx/jta/impl/TransactionImpl.equals(Ljava/lang/Object;)Z_7ff2c3e22860
SYM 868 0.02 java/lang/StringBuilder.<init>(I)V_7ff2c381c1e0
SYM 837 0.02 com/ibm/ws/tx/util/logging/WASTraceComponent.isEntryEnabled()Z_7ff2c3980720
SYM 835 0.02 sun/nio/cs/UTF_8$Encoder.encodeArrayLoop(Ljava/nio/CharBuffer;Ljava/nio/ByteBuffer;)Ljava/nio/charset/CoderResult;_7ff2c39cc3e8
SYM 834 0.02 org/eclipse/persistence/internal/descriptors/ObjectBuilder.buildWorkingCopyCloneFromRow(Lorg/eclipse/persistence/queries/ObjectBuildingQuery;Lorg/eclipse/persistence/internal/queries/JoinedAttributeManager;Lorg/eclipse/persistence/internal/sessions/AbstractRecord;Lorg/eclipse/persistence/internal/sessions/UnitOfWorkImpl;Ljava/lang/Object;Lorg/eclipse/persistence/internal/identitymaps/CacheKey;)Ljava/lang/Object;_7ff2c3a084e8
SYM 831 0.02 org/apache/myfaces/shared/renderkit/html/util/HTMLEncoder.encode(Ljava/io/Writer;Ljava/lang/String;ZZZ)V_7ff2c3af5d88
SYM 826 0.02 com/ibm/ws/rsadapter/jdbc/WSJdbcConnection.beginTransactionIfNecessary()V_7ff2c3a041a0
SYM 818 0.02 sun/nio/cs/UTF_8$Encoder.encode([CII[B)I_7ff2c381a4e8
SYM 813 0.02 com/ibm/db2/jcc/t4/x.r()I_7ff2c3a26000
SYM 802 0.02 java/lang/String.decompressedArrayCopy([CI[CII)V_7ff2c3809d08
SYM 802 0.02 com/ibm/ejs/j2c/PoolManager.reserve(Ljavax/resource/spi/ManagedConnectionFactory;Ljavax/security/auth/Subject;Ljavax/resource/spi/ConnectionRequestInfo;Ljava/lang/Object;ZZII)Lcom/ibm/ws/j2c/MCWrapper;_7ff2c3a912a8
SYM 799 0.02 javax/faces/component/UIComponent.popComponentFromEL(Ljavax/faces/context/FacesContext;)V_7ff2c3ae6800
SYM 793 0.02 org/eclipse/persistence/internal/databaseaccess/DatabaseAccessor.basicExecuteCall(Lorg/eclipse/persistence/queries/Call;Lorg/eclipse/persistence/internal/sessions/AbstractRecord;Lorg/eclipse/persistence/internal/sessions/AbstractSession;Z)Ljava/lang/Object;_7ff2c3a74e28
SYM 780 0.02 com/ibm/ws/jpa/container/eclipselink/logging/EclipseLinkLogger.getLogChannel(Ljava/lang/String;)Lcom/ibm/ws/jpa/container/eclipselink/logging/LogChannel;_7ff2c3a2af00
SYM 770 0.02 java/util/concurrent/atomic/AtomicReference.get()Ljava/lang/Object;_7ff2c3850860
SYM 766 0.02 com/ibm/db2/jcc/t4/ab.v(Lcom/ibm/db2/jcc/am/vo;)Lcom/ibm/db2/jcc/t4/i;_7ff2c3a294e0
SYM 747 0.02 com/ibm/db2/jcc/t4/x.b(I)I_7ff2c3ab3ec0
SYM 713 0.02 javax/faces/component/_ComponentAttributesMap.containsKey(Ljava/lang/Object;)Z_7ff2c3ae5640
SYM 665 0.02 org/eclipse/persistence/internal/databaseaccess/DatabaseAccessor.getObjectThroughOptimizedDataConversion(Ljava/sql/ResultSet;Lorg/eclipse/persistence/internal/helper/DatabaseField;IILorg/eclipse/persistence/internal/databaseaccess/DatabasePlatform;Lorg/eclipse/persistence/internal/sessions/AbstractSession;)Ljava/lang/Object;_7ff2c39efe28
java11
PID 655166 18.25 java_1ca2
MOD 472834 13.17 JITCODE
SYM 8439 0.24 sun/nio/cs/ISO_8859_1$Encoder.implEncodeISOArray([CI[BII)I_7f7f8aa5e468
SYM 7153 0.20 java/lang/Object.<init>()V_7f7f8a816e60
SYM 6048 0.17 java/util/HashMap.getNode(ILjava/lang/Object;)Ljava/util/HashMap$Node;_7f7f8a8218e8
SYM 5243 0.15 java/lang/String.decompressedArrayCopy([BI[BII)V_7f7f8a817de8
SYM 5218 0.15 java/lang/String.lengthInternal()I_7f7f8a816ae0
SYM 3318 0.09 com/ibm/websphere/ras/TraceComponent.isAnyTracingEnabled()Z_7f7f8a8b7158
SYM 3219 0.09 java/util/HashMap.hash(Ljava/lang/Object;)I_7f7f8a8192e0
SYM 3033 0.08 java/lang/ThreadLocal$ThreadLocalMap.getEntry(Ljava/lang/ThreadLocal;)Ljava/lang/ThreadLocal$ThreadLocalMap$Entry;_7f7f8a842a40
SYM 2602 0.07 java/lang/String.charAtInternal(I[B)C_7f7f8a817068
SYM 2553 0.07 java/lang/J9VMInternals.fastIdentityHashCode(Ljava/lang/Object;)I_7f7f8a819460
SYM 2490 0.07 java/lang/String.equals(Ljava/lang/Object;)Z_7f7f8a81c6c0
SYM 2408 0.07 java/lang/String.regionMatchesInternal(Ljava/lang/String;Ljava/lang/String;[B[BIII)Z_7f7f8a8188a8
SYM 2259 0.06 java/lang/String.hashCode()I_7f7f8a816f00
SYM 1901 0.05 java/lang/String.charAt(I)C_7f7f8a81a280
SYM 1781 0.05 java/util/HashMap.putVal(ILjava/lang/Object;Ljava/lang/Object;ZZ)Ljava/lang/Object;_7f7f8a8199a8
SYM 1714 0.05 java/lang/String.decompressedArrayCopy([BI[CII)V_7f7f8a83ad28
SYM 1685 0.05 java/lang/StringUTF16.putChar([BII)V_7f7f8a81a7a8
SYM 1594 0.04 java/util/concurrent/ConcurrentHashMap.get(Ljava/lang/Object;)Ljava/lang/Object;_7f7f8a821640
SYM 1547 0.04 java/util/concurrent/ConcurrentHashMap.tabAt([Ljava/util/concurrent/ConcurrentHashMap$Node;I)Ljava/util/concurrent/ConcurrentHashMap$Node;_7f7f8a8196a0
SYM 1541 0.04 java/lang/StringCoding.decodeUTF8_0([BIIZ)Ljava/lang/StringCoding$Result;_7f7f8a86d7e8
SYM 1425 0.04 java/util/Arrays.copyOfRange([BII)[B_7f7f8a82b088
SYM 1367 0.04 java/lang/ThreadLocal.get()Ljava/lang/Object;_7f7f8a83d520
SYM 1320 0.04 java/util/HashMap.get(Ljava/lang/Object;)Ljava/lang/Object;_7f7f8a824b80
SYM 1311 0.04 java/util/HashMap.resize()[Ljava/util/HashMap$Node;_7f7f8a830c20
SYM 1310 0.04 com/ibm/db2/jcc/am/Agent.loggingEnabled()Z_7f7f8aa2cb20
SYM 1307 0.04 java/lang/ThreadLocal.getMap(Ljava/lang/Thread;)Ljava/lang/ThreadLocal$ThreadLocalMap;_7f7f8a842160
SYM 1228 0.03 com/ibm/db2/jcc/am/qo.b(IZ)V_7f7f8aa671c8
SYM 1195 0.03 com/ibm/ejs/j2c/SharedPool.getSharedConnection(Ljava/lang/Object;Ljavax/security/auth/Subject;Ljavax/resource/spi/ConnectionRequestInfo;ZLjava/lang/String;II)Lcom/ibm/ws/j2c/MCWrapper;_7f7f8aaa30a8
SYM 1137 0.03 java/lang/AbstractStringBuilder.ensureCapacityInternal(I)V_7f7f8a81d8a0
SYM 1119 0.03 java/lang/StringUTF16.newBytesFor(I)[B_7f7f8a82ba98
SYM 1103 0.03 com/ibm/wsspi/genericbnf/KeyMatcher$KeyBucket.match(Ljava/lang/String;II)Lcom/ibm/wsspi/genericbnf/GenericKeys;_7f7f8aa6e168
SYM 1091 0.03 java/lang/String.length()I_7f7f8a81ea00
SYM 1080 0.03 java/util/Hashtable.get(Ljava/lang/Object;)Ljava/lang/Object;_7f7f8a82d360
SYM 1059 0.03 java/lang/AbstractStringBuilder.append(Ljava/lang/String;)Ljava/lang/AbstractStringBuilder;_7f7f8a823560
SYM 1031 0.03 java/util/Arrays.copyOf([BI)[B_7f7f8a825a20
SYM 1025 0.03 java/lang/reflect/Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;_7f7f8a87f448
SYM 986 0.03 java/lang/Integer.valueOf(I)Ljava/lang/Integer;_7f7f8a841458
SYM 984 0.03 com/ibm/db2/jcc/t4/x.c()V_7f7f8aa771e0
SYM 977 0.03 java/lang/ThreadLocal$ThreadLocalMap.getEntryAfterMiss(Ljava/lang/ThreadLocal;ILjava/lang/ThreadLocal$ThreadLocalMap$Entry;)Ljava/lang/ThreadLocal$ThreadLocalMap$Entry;_7f7f8a8bf728
SYM 967 0.03 com/ibm/wsspi/webcontainer/util/BufferedWriter.write(Ljava/lang/String;II)V_7f7f8ae8f208
SYM 962 0.03 org/eclipse/persistence/internal/descriptors/ObjectBuilder.buildWorkingCopyCloneFromRow(Lorg/eclipse/persistence/queries/ObjectBuildingQuery;Lorg/eclipse/persistence/internal/queries/JoinedAttributeManager;Lorg/eclipse/persistence/internal/sessions/AbstractRecord;Lorg/eclipse/persistence/internal/sessions/UnitOfWorkImpl;Ljava/lang/Object;Lorg/eclipse/persistence/internal/identitymaps/CacheKey;)Ljava/lang/Object;_7f7f8aa482a8
SYM 883 0.02 java/nio/charset/Charset.lookup(Ljava/lang/String;)Ljava/nio/charset/Charset;_7f7f8a85e300
SYM 868 0.02 org/apache/myfaces/view/facelets/tag/jsf/ComponentTagHandlerDelegate.apply(Ljavax/faces/view/facelets/FaceletContext;Ljavax/faces/component/UIComponent;)V_7f7f8ae9bdc8
SYM 843 0.02 com/ibm/ws/jpa/container/eclipselink/logging/EclipseLinkLogger.getLogChannel(Ljava/lang/String;)Lcom/ibm/ws/jpa/container/eclipselink/logging/LogChannel;_7f7f8aa656a0
SYM 835 0.02 com/ibm/ws/tx/util/logging/WASTraceComponent.isEntryEnabled()Z_7f7f8a9b90e0
SYM 828 0.02 org/eclipse/persistence/internal/databaseaccess/DatabaseAccessor.basicExecuteCall(Lorg/eclipse/persistence/queries/Call;Lorg/eclipse/persistence/internal/sessions/AbstractRecord;Lorg/eclipse/persistence/internal/sessions/AbstractSession;Z)Ljava/lang/Object;_7f7f8aa8b408
SYM 828 0.02 com/ibm/tx/jta/impl/TransactionImpl.equals(Ljava/lang/Object;)Z_7f7f8ae32ca0
SYM 824 0.02 com/ibm/db2/jcc/t4/ab.v(Lcom/ibm/db2/jcc/am/vo;)Lcom/ibm/db2/jcc/t4/i;_7f7f8ab76560
SYM 820 0.02 java/lang/AbstractStringBuilder.putStringAt(ILjava/lang/String;)V_7f7f8a8236a8
SYM 810 0.02 java/lang/String.decompressedArrayCopy([CI[BII)V_7f7f8a81a908
SYM 789 0.02 org/apache/myfaces/shared/renderkit/html/util/HTMLEncoder.encode(Ljava/io/Writer;Ljava/lang/String;ZZZ)V_7f7f8ae9adc8
SYM 785 0.02 java/lang/StringCoding.encodeUTF8_UTF16([BZ)[B_7f7f8a8264a0
SYM 783 0.02 java/util/concurrent/atomic/AtomicReference.get()Ljava/lang/Object;_7f7f8a8726e0
SYM 763 0.02 sun/nio/cs/UTF_8$Encoder.encodeArrayLoop(Ljava/nio/CharBuffer;Ljava/nio/ByteBuffer;)Ljava/nio/charset/CoderResult;_7f7f8a9f3948
SYM 750 0.02 java/util/ArrayList.get(I)Ljava/lang/Object;_7f7f8a950000
SYM 736 0.02 org/eclipse/persistence/internal/databaseaccess/DatabaseAccessor.getObjectThroughOptimizedDataConversion(Ljava/sql/ResultSet;Lorg/eclipse/persistence/internal/helper/DatabaseField;IILorg/eclipse/persistence/internal/databaseaccess/DatabasePlatform;Lorg/eclipse/persistence/internal/sessions/AbstractSession;)Ljava/lang/Object;_7f7f8aa2fba8
SYM 733 0.02 com/ibm/ws/rsadapter/jdbc/WSJdbcConnection.beginTransactionIfNecessary()V_7f7f8aa40860
SYM 714 0.02 com/ibm/ejs/j2c/PoolManager.reserve(Ljavax/resource/spi/ManagedConnectionFactory;Ljavax/security/auth/Subject;Ljavax/resource/spi/ConnectionRequestInfo;Ljava/lang/Object;ZZII)Lcom/ibm/ws/j2c/MCWrapper;_7f7f8aaaeda8
SYM 695 0.02 com/ibm/db2/jcc/t4/x.r()I_7f7f8aa5f1e0
SYM 690 0.02 org/eclipse/persistence/internal/descriptors/ObjectBuilder.buildAttributesIntoWorkingCopyClone(Ljava/lang/Object;Lorg/eclipse/persistence/internal/identitymaps/CacheKey;Lorg/eclipse/persistence/queries/ObjectBuildingQuery;Lorg/eclipse/persistence/internal/queries/JoinedAttributeManager;Lorg/eclipse/persistence/internal/sessions/AbstractRecord;Lorg/eclipse/persistence/internal/sessions/UnitOfWorkImpl;Z)V_7f7f8aa4fd08
SYM 687 0.02 java/util/IdentityHashMap.put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;_7f7f8a920348
SYM 686 0.02 javax/faces/component/UIComponent.popComponentFromEL(Ljavax/faces/context/FacesContext;)V_7f7f8ae8be80
SYM 685 0.02 java/lang/Boolean.booleanValue()Z_7f7f8a871820
SYM 676 0.02 java/util/HashMap$Node.<init>(ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V_7f7f8a820ec8
SYM 669 0.02 java/lang/String.getBytes([BIB)V_7f7f8a823888
SYM 639 0.02 javax/faces/component/_ComponentAttributesMap.containsKey(Ljava/lang/Object;)Z_7f7f8ae8d900
SYM 634 0.02 java/lang/AbstractStringBuilder.isLatin1()Z_7f7f8a81a880
SYM 632 0.02 java/util/concurrent/ConcurrentHashMap$Traverser.advance()Ljava/util/concurrent/ConcurrentHashMap$Node;_7f7f8a867260
SYM 628 0.02 com/ibm/db2/jcc/t4/x.b(I)I_7f7f8aae6f20
SYM 621 0.02 com/ibm/db2/jcc/t4/c.b(I)Z_7f7f8aa2cec0
SYM 620 0.02 java/util/ArrayList.add(Ljava/lang/Object;[Ljava/lang/Object;I)V_7f7f8a82df28
SYM 617 0.02 org/eclipse/persistence/internal/databaseaccess/DatabaseAccessor.fetchRow(Ljava/util/Vector;[Lorg/eclipse/persistence/internal/helper/DatabaseField;Ljava/sql/ResultSet;Ljava/sql/ResultSetMetaData;Lorg/eclipse/persistence/internal/sessions/AbstractSession;)Lorg/eclipse/persistence/internal/sessions/AbstractRecord;_7f7f8aa38188
SYM 610 0.02 java/util/LinkedList.remove(Ljava/lang/Object;)Z_7f7f8ab09620
SYM 601 0.02 org/eclipse/persistence/descriptors/DescriptorEventManager.executeEvent(Lorg/eclipse/persistence/descriptors/DescriptorEvent;)V_7f7f8aa52bc0
SYM 600 0.02 java/lang/Object.hashCode()I_7f7f8a8239e0
SYM 591 0.02 java/lang/ThreadLocal$ThreadLocalMap.set(Ljava/lang/ThreadLocal;Ljava/lang/Object;)V_7f7f8a8863e8
SYM 588 0.02 java/lang/StringUTF16.newString([BII)Ljava/lang/String;_7f7f8a82b428
SYM 587 0.02 com/ibm/ws/tcpchannel/internal/TCPBaseRequestContext.setBuffers([Lcom/ibm/wsspi/bytebuffer/WsByteBuffer;)V_7f7f8aabf360
SYM 582 0.02 com/ibm/tx/jta/impl/RegisteredSyncs.coreDistributeAfter(I)V_7f7f8aadf920
SYM 579 0.02 java/util/HashMap.newNode(ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)Ljava/util/HashMap$Node;_7f7f8a821108
SYM 569 0.02 java/lang/StringBuilder.toString()Ljava/lang/String;_7f7f8a82b9a0
SYM 563 0.02 java/lang/String.deduplicateStrings(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V_7f7f8a83a288
SYM 561 0.02 com/ibm/ejs/j2c/ConnectionManager.allocateConnection(Ljavax/resource/spi/ManagedConnectionFactory;Ljavax/resource/spi/ConnectionRequestInfo;)Ljava/lang/Object;_7f7f8ab46368
SYM 561 0.02 java/lang/String.equalsIgnoreCase(Ljava/lang/String;)Z_7f7f8a863dc0
SYM 560 0.02 java/util/HashMap.removeNode(ILjava/lang/Object;Ljava/lang/Object;ZZ)Ljava/util/HashMap$Node;_7f7f8a881f88
SYM 541 0.02 java/util/ArrayList$Itr.next()Ljava/lang/Object;_7f7f8a832ba0
SYM 535 0.01 com/ibm/db2/jcc/am/ResultSet.nextX()Z_7f7f8aa43460
SYM 533 0.01 org/apache/myfaces/application/ApplicationImpl.publishEvent(Ljavax/faces/context/FacesContext;Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/Object;)V_7f7f8aea2488
SYM 530 0.01 javax/faces/component/_ComponentChildrenList.get(I)Ljavax/faces/component/UIComponent;_7f7f8ae8e020
SYM 529 0.01 java/lang/Boolean.valueOf(Z)Ljava/lang/Boolean;_7f7f8a88e438
SYM 528 0.01 com/ibm/ejs/container/EJSContainer.postInvoke(Lcom/ibm/ejs/container/EJSWrapperBase;ILcom/ibm/ejs/container/EJSDeployedSupport;)V_7f7f8aacafa8
SYM 525 0.01 com/ibm/ws/webcontainer/srt/SRTServletRequestThreadData.getInstance()Lcom/ibm/ws/webcontainer/srt/SRTServletRequestThreadData;_7f7f8aa5daf8
SYM 524 0.01 org/jboss/weld/manager/BeanManagerImpl.internalGetContext(Ljava/lang/Class;)Ljavax/enterprise/context/spi/Context;_7f7f8ababa40
SYM 523 0.01 java/lang/Object.clone()Ljava/lang/Object;_7f7f8a869fe0
SYM 521 0.01 com/ibm/db2/jcc/t4/db.b(Ljava/io/OutputStream;)V_7f7f8aaeb1a0
SYM 518 0.01 com/ibm/ejs/j2c/MCWrapper.setPoolState(I)V_7f7f8aa78960
SYM 515 0.01 com/ibm/ws/rsadapter/impl/CacheMap.remove(Ljava/lang/Object;)Ljava/lang/Object;_7f7f8aac8e60
SYM 514 0.01 com/ibm/db2/jcc/t4/x.c(I)I_7f7f8aa5e600
SYM 510 0.01 com/ibm/tx/jta/impl/RegisteredSyncs.coreDistributeBefore()V_7f7f8aaed020
SYM 505 0.01 java/util/ArrayList.elementData(I)Ljava/lang/Object;_7f7f8a8301e0
SYM 504 0.01 java/io/PrintWriter.write(Ljava/lang/String;II)V_7f7f8ae8ee28
SYM 500 0.01 java/util/ArrayList$Itr.hasNext()Z_7f7f8a832480
SYM 499 0.01 com/ibm/db2/jcc/am/ResultSet.<init>(Lcom/ibm/db2/jcc/am/Agent;Lcom/ibm/db2/jcc/am/po;Lcom/ibm/db2/jcc/am/jc;III)V_7f7f8ab788e8
SYM 497 0.01 com/ibm/ws/rsadapter/impl/WSRdbManagedConnectionImpl.getConnection(Ljavax/security/auth/Subject;Ljavax/resource/spi/ConnectionRequestInfo;)Ljava/lang/Object;_7f7f8ab54c28
SYM 491 0.01 com/ibm/ws/jpa/container/eclipselink/logging/LogChannel.shouldLog(I)Z_7f7f8aa65ba0
SYM 487 0.01 com/ibm/tx/jta/embeddable/impl/EmbeddableTranManagerSet.self()Lcom/ibm/tx/jta/embeddable/impl/EmbeddableTranManagerImpl;_7f7f8aa5d440
SYM 486 0.01 org/eclipse/persistence/internal/databaseaccess/DatabaseAccessor.getObject(Ljava/sql/ResultSet;Lorg/eclipse/persistence/internal/helper/DatabaseField;Ljava/sql/ResultSetMetaData;ILorg/eclipse/persistence/internal/databaseaccess/DatabasePlatform;ZLorg/eclipse/persistence/internal/sessions/AbstractSession;)Ljava/lang/Object;_7f7f8aa2f268
java/lang/Object.<init>()V
is more expensive in Java8, but I would start from java/lang/String.decompressedArrayCopy
. We may have string compressin enabled by default in Java11, but I am not sure
Here's a java11 run with -XX:-CompactStrings
. It looks like String compression is disabled by default and java/lang/String.decompressedArrayCopy([BI[BII)V
is something that will get called without string compression enabled.
PID 647465 18.11 java_07d4
MOD 457364 12.79 JITCODE
SYM 8023 0.22 sun/nio/cs/ISO_8859_1$Encoder.implEncodeISOArray([CI[BII)I_7fcd3af5a8c8
SYM 6411 0.18 java/lang/Object.<init>()V_7fcd3ac40760
SYM 5751 0.16 java/util/HashMap.getNode(ILjava/lang/Object;)Ljava/util/HashMap$Node;_7fcd3ac4cc88
SYM 5256 0.15 java/lang/String.decompressedArrayCopy([BI[BII)V_7fcd3ac45348
SYM 5212 0.15 java/lang/String.lengthInternal()I_7fcd3ac40580
SYM 3269 0.09 java/util/HashMap.hash(Ljava/lang/Object;)I_7fcd3ac42a60
SYM 3234 0.09 com/ibm/websphere/ras/TraceComponent.isAnyTracingEnabled()Z_7fcd3ad52d18
SYM 2780 0.08 java/lang/ThreadLocal$ThreadLocalMap.getEntry(Ljava/lang/ThreadLocal;)Ljava/lang/ThreadLocal$ThreadLocalMap$Entry;_7fcd3ac60940
SYM 2692 0.08 java/lang/String.charAtInternal(I[B)C_7fcd3ac40b08
SYM 2530 0.07 java/lang/String.equals(Ljava/lang/Object;)Z_7fcd3ac46740
SYM 2471 0.07 java/lang/J9VMInternals.fastIdentityHashCode(Ljava/lang/Object;)I_7fcd3ac42be0
SYM 2393 0.07 java/lang/String.regionMatchesInternal(Ljava/lang/String;Ljava/lang/String;[B[BIII)Z_7fcd3ac45008
SYM 2117 0.06 java/lang/String.hashCode()I_7fcd3ac40800
SYM 2027 0.06 java/lang/String.charAt(I)C_7fcd3ac43700
SYM 1807 0.05 java/lang/String.decompressedArrayCopy([BI[CII)V_7fcd3ac68928
SYM 1633 0.05 java/util/concurrent/ConcurrentHashMap.get(Ljava/lang/Object;)Ljava/lang/Object;_7fcd3ac4ca00
@mpirvu Please let me know if you have any idea on how to move forward with this.
To summarize previous experiments with -Xnoaot and no recompilation: 1) For just warm compilations we see a 4.2% throughput gap, 7.2% more CPU and 375 more methods being compiled with Java11 2) For just cold compilations we see a 5% gap, 2% more CPU and 278 more methods being compiled 3) For just noOpt compilations we see a 3.3% gap, 3.5% more CPU and 450 more methods being compiled
One avenue of investigation would be to see which methods are consistently being compiled in Java11, but not in Java8
From the profile collected at noOpt we see 1) More ticks in jitted code 2) less ticks in VM/GC/JIT dlls 3) fewer ticks in kernel 4) More ticks in libc ==> Why?
Looking at the profile for jitted code the common thread is that String related methods take more ticks and java/lang/String.decompressedArrayCopy
doesn't even appear in Java8. I do not see something in Java8 that could replace it.
I wonder if it's possible to replace the String class from Java8 into Java11 or viceversa as a test. @fjeremic how difficult would this be?
I wonder if it's possible to replace the String class from Java8 into Java11 or viceversa as a test. @fjeremic how difficult would this be?
This would be very difficult. The Java 11 String class is built on top of a byte[]
while the Java 8 version is backed by a char[]
. Moreover the Java 11 class introduces the notion of a "coder" which is used with the StringCoding classes and other classes in java.lang
package.
decompressedArrayCopy
in particular is a recognized method. We should generally never see that in a profile because it should always get reduced to a TR::arraycopy
IL in VP. It would be interesting to find who the callers of this method are and to get traces for them and find out why the failed to replace calls to decompressedArrayCopy
with TR::arraycopy
.
The profiles above are from runs with noOpt, so inlining and VP are not performed.
@harryyu1994 Let's collect a pair of profiles with initialOptLevel=cold,inhibitRecompilation
, though I do expect the differences to move to TR::arraycopy
in this case.
I actually found String.decompressedArrayCopy
in Java8 and it takes 802 ticks:
SYM 802 0.02 java/lang/String.decompressedArrayCopy([CI[CII)V_7ff2c3809d08
compared to 5243 ticks in Java11
SYM 5243 0.15 java/lang/String.decompressedArrayCopy([BI[BII)V_7f7f8a817de8
Java11
PID 662619 38.82 java_240ec9
MOD 376279 22.04 JITCODE
SYM 5634 0.33 java/lang/String.equals(Ljava/lang/Object;)Z_7f2e3cebcda0
SYM 3537 0.21 java/lang/ThreadLocal$ThreadLocalMap.getEntry(Ljava/lang/ThreadLocal;)Ljava/lang/ThreadLocal$ThreadLocalMap$Entry;_7f2e3ced0be0
SYM 3233 0.19 java/lang/String.hashCode()I_7f2e3cebaf20
SYM 2609 0.15 java/lang/String.charAtInternal(I[B)C_7f2e3cebd908
SYM 2553 0.15 java/util/concurrent/ConcurrentHashMap.get(Ljava/lang/Object;)Ljava/lang/Object;_7f2e3cec16a0
SYM 2474 0.14 java/lang/ThreadLocal.get()Ljava/lang/Object;_7f2e3cefbae0
SYM 2371 0.14 java/util/HashMap.putVal(ILjava/lang/Object;Ljava/lang/Object;ZZ)Ljava/lang/Object;_7f2e3cebe5a8
SYM 2331 0.14 java/util/HashMap.hash(Ljava/lang/Object;)I_7f2e3cebefa0
SYM 2021 0.12 java/lang/StringUTF16.putChar([BII)V_7f2e3cec5228
SYM 1977 0.12 java/lang/String.charAt(I)C_7f2e3cec05e0
SYM 1644 0.10 java/util/concurrent/ConcurrentHashMap.tabAt([Ljava/util/concurrent/ConcurrentHashMap$Node;I)Ljava/util/concurrent/ConcurrentHashMap$Node;_7f2e3cebd9a0
SYM 1587 0.09 com/ibm/ws/jpa/container/eclipselink/logging/EclipseLinkLogger.getLogChannel(Ljava/lang/String;)Lcom/ibm/ws/jpa/container/eclipselink/logging/LogChannel;_7f2e3d40fc80
SYM 1571 0.09 java/lang/AbstractStringBuilder.ensureCapacityInternal(I)V_7f2e3cec53e0
SYM 1568 0.09 java/lang/StringCoding.decodeUTF8_0([BIIZ)Ljava/lang/StringCoding$Result;_7f2e3ced3548
SYM 1534 0.09 com/ibm/ejs/j2c/SharedPool.getSharedConnection(Ljava/lang/Object;Ljavax/security/auth/Subject;Ljavax/resource/spi/ConnectionRequestInfo;ZLjava/lang/String;II)Lcom/ibm/ws/j2c/MCWrapper;_7f2e3d4fe208
SYM 1444 0.08 java/lang/Object.hashCode()I_7f2e3cec1220
SYM 1389 0.08 java/lang/String.<init>(Ljava/lang/String;Ljava/lang/String;)V_7f2e3d1aeb28
SYM 1367 0.08 java/lang/reflect/Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;_7f2e3cf021c8
SYM 1275 0.07 java/util/HashMap.resize()[Ljava/util/HashMap$Node;_7f2e3cebf1c0
SYM 1274 0.07 com/ibm/wsspi/genericbnf/KeyMatcher$KeyBucket.match(Ljava/lang/String;II)Lcom/ibm/wsspi/genericbnf/GenericKeys;_7f2e3d3d2688
SYM 1255 0.07 java/lang/ThreadLocal.getMap(Ljava/lang/Thread;)Ljava/lang/ThreadLocal$ThreadLocalMap;_7f2e3cf144c0
SYM 1219 0.07 com/ibm/tx/jta/impl/TransactionImpl.equals(Ljava/lang/Object;)Z_7f2e3d785aa0
SYM 1211 0.07 javax/faces/component/UIComponent.getValueExpression(Ljava/lang/String;)Ljavax/el/ValueExpression;_7f2e3d409e60
SYM 1203 0.07 java/util/Arrays.copyOfRange([BII)[B_7f2e3ced4828
SYM 1167 0.07 java/util/Hashtable.get(Ljava/lang/Object;)Ljava/lang/Object;_7f2e3cecca20
SYM 1087 0.06 java/lang/AbstractStringBuilder.append(Ljava/lang/String;)Ljava/lang/AbstractStringBuilder;_7f2e3cecba00
SYM 1054 0.06 com/ibm/db2/jcc/am/qo.b(IZ)V_7f2e3d3fb5e8
SYM 1054 0.06 com/ibm/wsspi/webcontainer/util/BufferedWriter.write(Ljava/lang/String;II)V_7f2e3d4065a8
SYM 1031 0.06 javax/faces/component/_ComponentAttributesMap.getUnderlyingMap()Ljava/util/Map;_7f2e3d405da0
SYM 1023 0.06 java/lang/String.equalsIgnoreCase(Ljava/lang/String;)Z_7f2e3cee35c0
SYM 961 0.06 org/apache/jasper/runtime/JspWriterImpl.print(Ljava/lang/Object;)V_7f2e3d481bc0
SYM 951 0.06 java/lang/StringCoding.encodeUTF8_UTF16([BZ)[B_7f2e3ceccee0
SYM 945 0.06 javax/faces/component/UIComponent.popComponentFromEL(Ljavax/faces/context/FacesContext;)V_7f2e3d4080e0
SYM 933 0.05 org/apache/myfaces/shared/renderkit/html/util/HTMLEncoder.encode(Ljava/io/Writer;Ljava/lang/String;ZZZ)V_7f2e3d420728
SYM 932 0.05 com/ibm/websphere/ras/TraceComponent.isAnyTracingEnabled()Z_7f2e3d1f9738
SYM 931 0.05 java/lang/Enum.hashCode()I_7f2e3d022400
SYM 914 0.05 java/util/Arrays.copyOf([Ljava/lang/Object;ILjava/lang/Class;)[Ljava/lang/Object;_7f2e3cf0a5c8
SYM 899 0.05 javax/faces/component/UIComponent.pushComponentToEL(Ljavax/faces/context/FacesContext;Ljavax/faces/component/UIComponent;)V_7f2e3d412768
SYM 898 0.05 java/lang/Integer.valueOf(I)Ljava/lang/Integer;_7f2e3cf17a18
Java8
PID 656288 38.39 java_23e49e
MOD 374969 21.94 JITCODE
SYM 5361 0.31 java/lang/String.equals(Ljava/lang/Object;)Z_7f623ce08f60
SYM 2997 0.18 java/lang/ThreadLocal$ThreadLocalMap.getEntry(Ljava/lang/ThreadLocal;)Ljava/lang/ThreadLocal$ThreadLocalMap$Entry;_7f623ce0e8e0
SYM 2833 0.17 java/lang/String.charAtInternal(I[C)C_7f623ce01308
SYM 2708 0.16 java/lang/String.hashCode()I_7f623ce08840
SYM 2347 0.14 java/util/HashMap.putVal(ILjava/lang/Object;Ljava/lang/Object;ZZ)Ljava/lang/Object;_7f623ce09328
SYM 2323 0.14 java/util/HashMap.hash(Ljava/lang/Object;)I_7f623ce14420
SYM 2172 0.13 java/util/concurrent/ConcurrentHashMap.get(Ljava/lang/Object;)Ljava/lang/Object;_7f623ce20060
SYM 1941 0.11 com/ibm/ws/jpa/container/eclipselink/logging/EclipseLinkLogger.getLogChannel(Ljava/lang/String;)Lcom/ibm/ws/jpa/container/eclipselink/logging/LogChannel;_7f623d276ca0
SYM 1922 0.11 java/lang/String.charAt(I)C_7f623ce01740
SYM 1910 0.11 java/lang/ThreadLocal.get()Ljava/lang/Object;_7f623ce241e0
SYM 1790 0.10 java/util/concurrent/ConcurrentHashMap.tabAt([Ljava/util/concurrent/ConcurrentHashMap$Node;I)Ljava/util/concurrent/ConcurrentHashMap$Node;_7f623ce31d60
SYM 1559 0.09 java/lang/String.<init>(Ljava/lang/String;Ljava/lang/String;)V_7f623d051f48
SYM 1532 0.09 com/ibm/ejs/j2c/SharedPool.getSharedConnection(Ljava/lang/Object;Ljavax/security/auth/Subject;Ljavax/resource/spi/ConnectionRequestInfo;ZLjava/lang/String;II)Lcom/ibm/ws/j2c/MCWrapper;_7f623d3126c8
SYM 1493 0.09 com/ibm/wsspi/webcontainer/util/BufferedWriter.write(Ljava/lang/String;II)V_7f623d2737c8
SYM 1454 0.09 java/lang/Object.hashCode()I_7f623ce21700
SYM 1393 0.08 java/util/HashMap.resize()[Ljava/util/HashMap$Node;_7f623ce2db20
SYM 1378 0.08 javax/faces/component/UIComponent.getValueExpression(Ljava/lang/String;)Ljavax/el/ValueExpression;_7f623d2757c0
SYM 1362 0.08 com/ibm/wsspi/genericbnf/KeyMatcher$KeyBucket.match(Ljava/lang/String;II)Lcom/ibm/wsspi/genericbnf/GenericKeys;_7f623d249ae8
SYM 1308 0.08 com/ibm/tx/jta/impl/TransactionImpl.equals(Ljava/lang/Object;)Z_7f623d6102e0
SYM 1299 0.08 javax/faces/component/_ComponentAttributesMap.getUnderlyingMap()Ljava/util/Map;_7f623d272e00
SYM 1292 0.08 javax/faces/component/UIComponent.popComponentFromEL(Ljavax/faces/context/FacesContext;)V_7f623d265e40
SYM 1185 0.07 java/util/Hashtable.get(Ljava/lang/Object;)Ljava/lang/Object;_7f623ce089a0
SYM 1111 0.06 javax/faces/component/UIComponent.pushComponentToEL(Ljavax/faces/context/FacesContext;Ljavax/faces/component/UIComponent;)V_7f623d278ee8
SYM 1040 0.06 java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;_7f623ce0f080
SYM 1031 0.06 sun/nio/cs/UTF_8$Decoder.decode([BII[C)I_7f623ce0d148
SYM 1006 0.06 org/apache/myfaces/shared/renderkit/html/util/HTMLEncoder.encode(Ljava/io/Writer;Ljava/lang/String;ZZZ)V_7f623d33b2a8
SYM 988 0.06 java/io/CharArrayWriter.write(Ljava/lang/String;II)V_7f623d248868
SYM 983 0.06 com/ibm/db2/jcc/am/qo.b(IZ)V_7f623d2d05c8
SYM 979 0.06 java/lang/reflect/Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;_7f623ce354c8
SYM 972 0.06 java/lang/Enum.hashCode()I_7f623cf23f00
SYM 971 0.06 java/lang/String.getCharsNoBoundChecks(II[CI)V_7f623ce0ef28
SYM 940 0.05 com/ibm/websphere/ras/TraceComponent.isAnyTracingEnabled()Z_7f623d112d18
SYM 909 0.05 java/lang/ThreadLocal$ThreadLocalMap.set(Ljava/lang/ThreadLocal;Ljava/lang/Object;)V_7f623ce4cc88
SYM 884 0.05 java/util/Arrays.copyOf([Ljava/lang/Object;ILjava/lang/Class;)[Ljava/lang/Object;_7f623ce3cda8
SYM 870 0.05 com/ibm/db2/jcc/t4/x.r()I_7f623d24a1e0
SYM 865 0.05 sun/nio/cs/UTF_8$Encoder.encodeArrayLoop(Ljava/nio/CharBuffer;Ljava/nio/ByteBuffer;)Ljava/nio/charset/CoderResult;_7f623cf38ce8
SYM 861 0.05 java/lang/StringCoding.decode(Ljava/lang/String;[BII)[C_7f623ce20428
SYM 850 0.05 java/lang/String.equalsIgnoreCase(Ljava/lang/String;)Z_7f623ce12b00
SYM 820 0.05 java/util/ArrayList.add(Ljava/lang/Object;)Z_7f623ce1e4c0
SYM 818 0.05 com/ibm/db2/jcc/t4/x.c()V_7f623d28eee0
SYM 818 0.05 sun/nio/cs/UTF_8$Encoder.encode([CII[B)I_7f623ce0ac08
SYM 809 0.05 com/ibm/ws/webcontainer/srt/SRTServletRequest.getAttribute(Ljava/lang/String;)Ljava/lang/Object;_7f623d291a40
SYM 795 0.05 com/ibm/ws/genericbnf/internal/BNFHeadersImpl.findHeader(Lcom/ibm/wsspi/genericbnf/HeaderKeys;)Lcom/ibm/ws/genericbnf/internal/HeaderElement;_7f623d28cd60
SYM 787 0.05 java/util/Vector.<init>(II)V_7f623d079528
SYM 787 0.05 org/apache/jasper/runtime/JspWriterImpl.write([CII)V_7f623d2a4788
SYM 778 0.05 javax/faces/component/_ComponentAttributesMap.containsKey(Ljava/lang/Object;)Z_7f623d271e80
SYM 775 0.05 java/util/IdentityHashMap.put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;_7f623d1c6328
I'm going to get a brand new build and redo the experiment again. This was done with the previous script I had and the previous build I had. Things may have changed.
@harryyu1994 The profiles above show very close number of ticks between Java8 and Java11. When you do the next experiments please record and report the throughput from the profiled runs. I am guessing you profile for a fixed duration of time which is the same for both Java8 and Java11.
PID 656033 37.72 java_257f8a
MOD 378447 21.76 JITCODE
SYM 5541 0.32 java/lang/String.equals(Ljava/lang/Object;)Z_7f412ce07000
SYM 3054 0.18 java/lang/String.charAtInternal(I[C)C_7f412ce03de8
SYM 2914 0.17 java/lang/ThreadLocal$ThreadLocalMap.getEntry(Ljava/lang/ThreadLocal;)Ljava/lang/ThreadLocal$ThreadLocalMap$Entry;_7f412ce19960
SYM 2678 0.15 java/lang/String.hashCode()I_7f412ce05b40
SYM 2617 0.15 java/util/HashMap.hash(Ljava/lang/Object;)I_7f412ce0c160
SYM 2377 0.14 java/util/HashMap.putVal(ILjava/lang/Object;Ljava/lang/Object;ZZ)Ljava/lang/Object;_7f412ce0e328
SYM 2116 0.12 java/util/concurrent/ConcurrentHashMap.get(Ljava/lang/Object;)Ljava/lang/Object;_7f412ce36c00
SYM 1936 0.11 com/ibm/ws/jpa/container/eclipselink/logging/EclipseLinkLogger.getLogChannel(Ljava/lang/String;)Lcom/ibm/ws/jpa/container/eclipselink/logging/LogChannel;_7f412d186ac0
SYM 1908 0.11 java/lang/String.charAt(I)C_7f412ce04400
SYM 1780 0.10 java/util/concurrent/ConcurrentHashMap.tabAt([Ljava/util/concurrent/ConcurrentHashMap$Node;I)Ljava/util/concurrent/ConcurrentHashMap$Node;_7f412ce1fc80
SYM 1768 0.10 java/lang/ThreadLocal.get()Ljava/lang/Object;_7f412ce19720
SYM 1694 0.10 java/lang/String.<init>(Ljava/lang/String;Ljava/lang/String;)V_7f412cef5f08
SYM 1676 0.10 com/ibm/ejs/j2c/SharedPool.getSharedConnection(Ljava/lang/Object;Ljavax/security/auth/Subject;Ljavax/resource/spi/ConnectionRequestInfo;ZLjava/lang/String;II)Lcom/ibm/ws/j2c/MCWrapper;_7f412d1d7c68
SYM 1513 0.09 com/ibm/wsspi/webcontainer/util/BufferedWriter.write(Ljava/lang/String;II)V_7f412d488a88
SYM 1473 0.08 com/ibm/wsspi/genericbnf/KeyMatcher$KeyBucket.match(Ljava/lang/String;II)Lcom/ibm/wsspi/genericbnf/GenericKeys;_7f412d187a48
SYM 1454 0.08 java/lang/Object.hashCode()I_7f412ce16500
SYM 1369 0.08 java/util/HashMap.resize()[Ljava/util/HashMap$Node;_7f412ce13ac0
SYM 1351 0.08 javax/faces/component/UIComponent.getValueExpression(Ljava/lang/String;)Ljavax/el/ValueExpression;_7f412d48a2e0
SYM 1246 0.07 javax/faces/component/_ComponentAttributesMap.getUnderlyingMap()Ljava/util/Map;_7f412d488340
SYM 1229 0.07 com/ibm/tx/jta/impl/TransactionImpl.equals(Ljava/lang/Object;)Z_7f412d60a7e0
SYM 1193 0.07 java/lang/String.getCharsNoBoundChecks(II[CI)V_7f412ce0dca8
SYM 1192 0.07 javax/faces/component/UIComponent.popComponentFromEL(Ljavax/faces/context/FacesContext;)V_7f412d48d960
SYM 1147 0.07 java/util/Hashtable.get(Ljava/lang/Object;)Ljava/lang/Object;_7f412ce09a20
SYM 1103 0.06 java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;_7f412ce0b400
SYM 1063 0.06 com/ibm/db2/jcc/am/qo.b(IZ)V_7f412d195d88
SYM 1050 0.06 sun/nio/cs/UTF_8$Decoder.decode([BII[C)I_7f412ce07428
SYM 1040 0.06 javax/faces/component/UIComponent.pushComponentToEL(Ljavax/faces/context/FacesContext;Ljavax/faces/component/UIComponent;)V_7f412d48c8c8
SYM 1026 0.06 java/lang/Enum.hashCode()I_7f412d09a380
SYM 957 0.06 java/io/CharArrayWriter.write(Ljava/lang/String;II)V_7f412d185688
SYM 928 0.05 java/lang/ThreadLocal$ThreadLocalMap.set(Ljava/lang/ThreadLocal;Ljava/lang/Object;)V_7f412ce46d88
SYM 928 0.05 java/util/Arrays.copyOf([Ljava/lang/Object;ILjava/lang/Class;)[Ljava/lang/Object;_7f412ce26588
SYM 917 0.05 com/ibm/websphere/ras/TraceComponent.isAnyTracingEnabled()Z_7f412cf395b8
SYM 915 0.05 org/apache/myfaces/shared/renderkit/html/util/HTMLEncoder.encode(Ljava/io/Writer;Ljava/lang/String;ZZZ)V_7f412d49b3a8
SYM 876 0.05 com/ibm/db2/jcc/t4/x.c()V_7f412d19dd40
SYM 875 0.05 java/lang/StringCoding$StringDecoder.decode([BII)[C_7f412ce1b628
SYM 869 0.05 sun/nio/cs/UTF_8$Encoder.encode([CII[B)I_7f412ce06888
SYM 857 0.05 java/lang/StringCoding.decode(Ljava/lang/String;[BII)[C_7f412ce1af68
SYM 845 0.05 com/ibm/ws/webcontainer/srt/SRTServletRequest.getAttribute(Ljava/lang/String;)Ljava/lang/Object;_7f412d1a20e0
SYM 827 0.05 com/ibm/ws/genericbnf/internal/BNFHeadersImpl.findHeader(Lcom/ibm/wsspi/genericbnf/HeaderKeys;)Lcom/ibm/ws/genericbnf/internal/HeaderElement;_7f412d19a5e0
SYM 820 0.05 com/ibm/db2/jcc/t4/x.r()I_7f412d17c8e0
SYM 811 0.05 sun/nio/cs/UTF_8$Encoder.encodeArrayLoop(Ljava/nio/CharBuffer;Ljava/nio/ByteBuffer;)Ljava/nio/charset/CoderResult;_7f412d490bc8
SYM 807 0.05 java/util/LinkedList.remove(Ljava/lang/Object;)Z_7f412d268820
PID 661353 38.59 java_254cbb
MOD 385058 22.47 JITCODE
SYM 5502 0.32 java/lang/String.equals(Ljava/lang/Object;)Z_7f843f186860
SYM 3141 0.18 java/lang/String.charAtInternal(I[B)C_7f843f180fa8
SYM 3125 0.18 java/lang/ThreadLocal$ThreadLocalMap.getEntry(Ljava/lang/ThreadLocal;)Ljava/lang/ThreadLocal$ThreadLocalMap$Entry;_7f843f1a04e0
SYM 2674 0.16 java/lang/String.hashCode()I_7f843f17ff60
SYM 2542 0.15 java/util/HashMap.hash(Ljava/lang/Object;)I_7f843f1836c0
SYM 2421 0.14 java/util/HashMap.putVal(ILjava/lang/Object;Ljava/lang/Object;ZZ)Ljava/lang/Object;_7f843f182e48
SYM 2340 0.14 java/util/concurrent/ConcurrentHashMap.get(Ljava/lang/Object;)Ljava/lang/Object;_7f843f18caa0
SYM 2179 0.13 java/lang/StringUTF16.putChar([BII)V_7f843f185a28
SYM 1986 0.12 java/lang/AbstractStringBuilder.ensureCapacityInternal(I)V_7f843f1884a0
SYM 1986 0.12 java/lang/String.charAt(I)C_7f843f184720
SYM 1804 0.11 java/lang/Object.hashCode()I_7f843f18e9a0
SYM 1758 0.10 java/util/concurrent/ConcurrentHashMap.tabAt([Ljava/util/concurrent/ConcurrentHashMap$Node;I)Ljava/util/concurrent/ConcurrentHashMap$Node;_7f843f183880
SYM 1722 0.10 java/lang/StringCoding.decodeUTF8_0([BIIZ)Ljava/lang/StringCoding$Result;_7f843f18a668
SYM 1686 0.10 com/ibm/ws/jpa/container/eclipselink/logging/EclipseLinkLogger.getLogChannel(Ljava/lang/String;)Lcom/ibm/ws/jpa/container/eclipselink/logging/LogChannel;_7f843f5da240
SYM 1548 0.09 java/lang/String.<init>(Ljava/lang/String;Ljava/lang/String;)V_7f843f468da8
SYM 1524 0.09 com/ibm/ejs/j2c/SharedPool.getSharedConnection(Ljava/lang/Object;Ljavax/security/auth/Subject;Ljavax/resource/spi/ConnectionRequestInfo;ZLjava/lang/String;II)Lcom/ibm/ws/j2c/MCWrapper;_7f843f72f8c8
SYM 1478 0.09 java/lang/ThreadLocal.get()Ljava/lang/Object;_7f843f1a03a0
SYM 1449 0.08 java/util/HashMap.resize()[Ljava/util/HashMap$Node;_7f843f1a1fa0
SYM 1366 0.08 com/ibm/tx/jta/impl/TransactionImpl.equals(Ljava/lang/Object;)Z_7f843f992440
SYM 1323 0.08 java/lang/reflect/Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;_7f843f4a2a28
SYM 1307 0.08 com/ibm/wsspi/genericbnf/KeyMatcher$KeyBucket.match(Ljava/lang/String;II)Lcom/ibm/wsspi/genericbnf/GenericKeys;_7f843f5f73e8
SYM 1274 0.07 java/lang/ThreadLocal.getMap(Ljava/lang/Thread;)Ljava/lang/ThreadLocal$ThreadLocalMap;_7f843f1a0320
SYM 1175 0.07 java/util/Arrays.copyOfRange([BII)[B_7f843f196b48
SYM 1150 0.07 javax/faces/component/UIComponent.popComponentFromEL(Ljavax/faces/context/FacesContext;)V_7f843f611000
SYM 1125 0.07 java/lang/Enum.hashCode()I_7f843f23e780
SYM 1122 0.07 java/util/Hashtable.get(Ljava/lang/Object;)Ljava/lang/Object;_7f843f191960
SYM 1091 0.06 javax/faces/component/UIComponent.getValueExpression(Ljava/lang/String;)Ljavax/el/ValueExpression;_7f843f619e20
SYM 1044 0.06 java/lang/String.getBytes([BIB)V_7f843f18bea8
SYM 1023 0.06 com/ibm/db2/jcc/am/qo.b(IZ)V_7f843f70b808
SYM 1015 0.06 com/ibm/wsspi/webcontainer/util/BufferedWriter.write(Ljava/lang/String;II)V_7f843f616048
SYM 1001 0.06 java/util/Arrays.copyOf([Ljava/lang/Object;ILjava/lang/Class;)[Ljava/lang/Object;_7f843f1aa108
SYM 997 0.06 org/apache/myfaces/shared/renderkit/html/util/HTMLEncoder.encode(Ljava/io/Writer;Ljava/lang/String;ZZZ)V_7f843f6292a8
SYM 991 0.06 javax/faces/component/_ComponentAttributesMap.getUnderlyingMap()Ljava/util/Map;_7f843f615940
SYM 974 0.06 java/lang/String.getCharsNoBoundChecks(II[CI)V_7f843f1e0ce8
SYM 956 0.06 java/util/ArrayList.add(Ljava/lang/Object;)Z_7f843f19ae20
SYM 936 0.05 javax/faces/component/_ComponentAttributesMap.containsKey(Ljava/lang/Object;)Z_7f843f613580
SYM 936 0.05 java/nio/charset/Charset.lookup(Ljava/lang/String;)Ljava/nio/charset/Charset;_7f843f198e80
SYM 923 0.05 javax/faces/component/UIComponent.pushComponentToEL(Ljavax/faces/context/FacesContext;Ljavax/faces/component/UIComponent;)V_7f843f61e048
SYM 917 0.05 java/lang/AbstractStringBuilder.append(Ljava/lang/String;)Ljava/lang/AbstractStringBuilder;_7f843f18c0e0
SYM 907 0.05 org/apache/jasper/runtime/JspWriterImpl.print(Ljava/lang/Object;)V_7f843f5d7b20
SYM 887 0.05 com/ibm/db2/jcc/t4/x.c()V_7f843f5e37a0
SYM 879 0.05 com/ibm/websphere/ras/TraceComponent.isAnyTracingEnabled()Z_7f843f498bd8
SYM 856 0.05 java/util/HashMap$Node.<init>(ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V_7f843f18c228
SYM 853 0.05 java/lang/StringCoding.encodeUTF8_UTF16([BZ)[B_7f843f189a00
SYM 835 0.05 com/ibm/db2/jcc/t4/x.r()I_7f843f5c76c0
SYM 813 0.05 org/eclipse/persistence/internal/databaseaccess/DatabaseAccessor.fetchRow(Ljava/util/Vector;[Lorg/eclipse/persistence/internal/helper/DatabaseField;Ljava/sql/ResultSet;Ljava/sql/ResultSetMetaData;Lorg/eclipse/persistence/internal/sessions/AbstractSession;)Lorg/eclipse/persistence/internal/sessions/AbstractRecord;_7f843f2b57c8
SYM 810 0.05 com/ibm/db2/jcc/t4/ab.v(Lcom/ibm/db2/jcc/am/vo;)Lcom/ibm/db2/jcc/t4/i;_7f843f5e40c0
SYM 798 0.05 com/ibm/ws/genericbnf/internal/BNFHeadersImpl.findHeader(Lcom/ibm/wsspi/genericbnf/HeaderKeys;)Lcom/ibm/ws/genericbnf/internal/HeaderElement;_7f843f5e2b00
SYM 793 0.05 java/lang/Integer.valueOf(I)Ljava/lang/Integer;_7f843f3ba618
SYM 789 0.05 org/apache/jasper/runtime/JspWriterImpl.write([CII)V_7f843f5f1d68
@harryyu1994 Could you please post the ticks in other modules as well? I am thinking that since the difference in ticks for jitted code does not account for the entire throughput drop, there could be other modules responsible for the gap. In particular I am guessing there will be an increase in ticks for JIT helpers (JIT dll).
Java8
PID 656033 37.72 java_257f8a
MOD 378447 21.76 JITCODE
MOD 201189 11.57 vmlinux
MOD 17864 1.03 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9gc29.so
MOD 10308 0.59 [ip_tables]
MOD 9999 0.57 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9vm29.so
MOD 7755 0.45 [nf_conntrack]
MOD 6306 0.36 /usr/lib64/libpthread-2.17.so
MOD 5669 0.33 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9jit29.so
MOD 4433 0.25 /usr/lib64/libc-2.17.so
MOD 1940 0.11 /home/harryayu2/sdks/java8/jre/lib/amd64/libnet.so
MOD 1472 0.08 [ip_vs]
MOD 1198 0.07 [vdso]
MOD 1149 0.07 [nf_conntrack_ipv4]
MOD 1065 0.06 [nf_nat_ipv4]
MOD 905 0.05 [xt_conntrack]
MOD 596 0.03 [iptable_mangle]
MOD 522 0.03 [nf_nat]
MOD 491 0.03 [iptable_raw]
MOD 482 0.03 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9prt29.so
MOD 473 0.03 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9thr29.so
MOD 433 0.02 [iptable_nat]
MOD 375 0.02 [iptable_security]
MOD 349 0.02 [iptable_filter]
MOD 326 0.02 [nf_defrag_ipv4]
MOD 323 0.02 /home/harryayu2/sdks/java8/jre/lib/amd64/libnio.so
MOD 312 0.02 /home/harryayu2/sdks/java8/jre/lib/amd64/libjava.so
MOD 260 0.01 /usr/lib64/libm-2.17.so
MOD 245 0.01 /usr/lib64/libcrypto.so.1.0.2k
MOD 222 0.01 [br_netfilter]
MOD 210 0.01 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libjclse29.so
MOD 205 0.01 [nf_conntrack_netlink]
MOD 175 0.01 [nfnetlink]
MOD 126 0.01 /home/harryayu2/sdks/java8/jre/lib/amd64/libzip.so
MOD 77 0.00 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9trc29.so
MOD 53 0.00 /opt/pi-75050cffff_retry/Dpiperf/lib/libperfutil.so
MOD 23 0.00 /usr/lib64/ld-2.17.so
MOD 20 0.00 /home/harryayu2/sdks/java8/jre/lib/amd64/libjncrypto.so
MOD 17 0.00 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libjvm.so
MOD 7 0.00 /home/harryayu2/sdks/java8/jre/lib/amd64/j9vm/libjvm.so
MOD 4 0.00 /opt/pi-75050cffff_retry/Dpiperf/lib/libjprof.so
MOD 3 0.00 [xfs]
MOD 2 0.00 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9jvmti29.so
MOD 1 0.00 /usr/lib64/libgcc_s-4.8.5-20150702.so.1
MOD 1 0.00 [igb]
MOD 1 0.00 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9hookable29.so
Java11
PID 661353 38.59 java_254cbb
MOD 385058 22.47 JITCODE
MOD 192365 11.23 vmlinux
MOD 18011 1.05 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9gc29.so
MOD 12134 0.71 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9vm29.so
MOD 10022 0.58 [ip_tables]
MOD 8744 0.51 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9jit29.so
MOD 7602 0.44 [nf_conntrack]
MOD 6496 0.38 /usr/lib64/libpthread-2.17.so
MOD 4571 0.27 /usr/lib64/libc-2.17.so
MOD 2413 0.14 /home/harryayu2/sdks/java11/lib/compressedrefs/libjclse29.so
MOD 1798 0.10 /home/harryayu2/sdks/java11/lib/libnet.so
MOD 1569 0.09 [ip_vs]
MOD 1099 0.06 [nf_nat_ipv4]
MOD 1074 0.06 [nf_conntrack_ipv4]
MOD 1070 0.06 [vdso]
MOD 849 0.05 [xt_conntrack]
MOD 591 0.03 [iptable_mangle]
MOD 578 0.03 [nf_nat]
MOD 547 0.03 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9prt29.so
MOD 476 0.03 [iptable_raw]
MOD 435 0.03 [iptable_nat]
MOD 392 0.02 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9thr29.so
MOD 371 0.02 [iptable_filter]
MOD 364 0.02 [nf_defrag_ipv4]
MOD 362 0.02 [iptable_security]
MOD 340 0.02 /home/harryayu2/sdks/java11/lib/server/libjvm.so
MOD 287 0.02 /home/harryayu2/sdks/java11/lib/libnio.so
MOD 277 0.02 /home/harryayu2/sdks/java11/lib/compressedrefs/libjvm.so
MOD 269 0.02 /usr/lib64/libm-2.17.so
MOD 257 0.01 /usr/lib64/libcrypto.so.1.0.2k
MOD 228 0.01 [br_netfilter]
MOD 221 0.01 [nf_conntrack_netlink]
MOD 162 0.01 /home/harryayu2/sdks/java11/lib/libjava.so
MOD 129 0.01 [nfnetlink]
MOD 63 0.00 /opt/pi-75050cffff_retry/Dpiperf/lib/libperfutil.so
MOD 61 0.00 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9trc29.so
MOD 25 0.00 /home/harryayu2/sdks/java11/lib/libjncrypto.so
MOD 21 0.00 /usr/lib64/ld-2.17.so
MOD 7 0.00 [igb]
MOD 5 0.00 NoModule
MOD 4 0.00 /opt/pi-75050cffff_retry/Dpiperf/lib/libjprof.so
MOD 3 0.00 [xfs]
MOD 1 0.00 /usr/lib64/libgcc_s-4.8.5-20150702.so.1
MOD 1 0.00 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9jvmti29.so
MOD 1 0.00 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9hookable29.so
Java8
MOD 5669 0.33 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9jit29.so
MOD 9999 0.57 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9vm29.so
MOD 210 0.01 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libjclse29.so
Java11
MOD 8744 0.51 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9jit29.so
MOD 12134 0.71 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9vm29.so
MOD 2413 0.14 /home/harryayu2/sdks/java11/lib/compressedrefs/libjclse29.so
Could you please detail those 3 dlls?
MOD 9999 0.57 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9vm29.so
SYM 1962 0.11 VM_BytecodeInterpreter::run(J9VMThread*)
SYM 1940 0.11 Fast_java_lang_J9VMInternals_primitiveClone
SYM 1244 0.07 Fast_java_lang_J9VMInternals_identityHashCode
SYM 984 0.06 objectMonitorExit
SYM 676 0.04 objectMonitorEnterNonBlocking
SYM 465 0.03 setArrayRegion
SYM 453 0.03 getIntField
SYM 330 0.02 getObjectField
SYM 231 0.01 getArrayRegion
SYM 181 0.01 Fast_java_lang_System_currentTimeMillis
SYM 137 0.01 exceptionCheck
SYM 126 0.01 Fast_java_lang_Class_getComponentType
SYM 119 0.01 bytecodeLoop
SYM 116 0.01 Fast_java_lang_reflect_Array_newArrayImpl
SYM 98 0.01 Fast_java_lang_Class_getModifiersImpl
SYM 88 0.01 c_cInterpreter
SYM 65 0.00 Fast_java_lang_Thread_isInterruptedImpl
SYM 64 0.00 walkFrame
SYM 61 0.00 walkStackFrames
SYM 57 0.00 classHashEqualFn
SYM 52 0.00 <plt>
SYM 45 0.00 internalEnterVMFromJNI
SYM 42 0.00 mapLocalSet.isra.0
SYM 40 0.00 getSimpleNameForROMClass
SYM 29 0.00 j9jni_createLocalRef
SYM 25 0.00 hashTableFind
SYM 21 0.00 copyStringToUTF8Helper
SYM 18 0.00 bcvCheckClassNameInLoading
SYM 17 0.00 searchClassForMethodCommon
SYM 16 0.00 copyStringToUTF8WithMemAlloc
SYM 16 0.00 cInterpGetStackClassJEP176Iterator
SYM 15 0.00 classHashFn
SYM 15 0.00 internalExitVMToJNI
SYM 15 0.00 j9localmap_LocalBitsForPC
SYM 14 0.00 instanceOfOrCheckCast
SYM 13 0.00 verifyQualifiedName
SYM 13 0.00 allocate_dimension
SYM 13 0.00 javaLookupMethodImpl
SYM 12 0.00 helperMultiANewArray
SYM 10 0.00 acquireExclusiveVMAccess
SYM 9 0.00 Fast_java_lang_Object_notifyAll
SYM 9 0.00 hashClassTableAtString
SYM 8 0.00 getPrimitiveArrayCritical
SYM 6 0.00 checkVisibility
SYM 6 0.00 pushArguments
SYM 6 0.00 internalFindClassString
SYM 5 0.00 javaCheckAsyncMessages
SYM 5 0.00 newObject
SYM 5 0.00 Fast_java_lang_Class_forNameImpl
MOD 5669 0.33 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9jit29.so
SYM 898 0.05 old_fast_jitLookupInterfaceMethod
SYM 834 0.05 fast_jitInstanceOf
SYM 481 0.03 sixteencharsTO
SYM 326 0.02 jitLookupInterfaceMethod
SYM 246 0.01 fast_jitMonitorExit
SYM 219 0.01 jitGetExceptionTableFromPC
SYM 199 0.01 fast_jitCheckCast
SYM 164 0.01 jitMonitorExit
SYM 163 0.01 IPicLookupDispatch
SYM 112 0.01 jitGetMapsFromPC
SYM 102 0.01 fast_jitMethodMonitorEntry
SYM 95 0.01 fast_jitMonitorEntry
SYM 93 0.01 hash_jit_artifact_search
SYM 93 0.01 jitCheckCast
SYM 90 0.01 mergeIPicLookupDispatch
SYM 87 0.01 jitMethodMonitorExit
SYM 87 0.01 jitWalkStackFrames
SYM 80 0.00 fast_jitMethodMonitorExit
SYM 75 0.00 fast_jitWriteBarrierStoreGenerational
SYM 74 0.00 jitMethodMonitorEntry
SYM 71 0.00 TR_IPMethodHashTableEntry::add(TR_OpaqueMethodBlock*,-TR_OpaqueMethodBlock*,-unsigned-int)
SYM 69 0.00 jitMonitorEntry
SYM 66 0.00 fast_jitTypeCheckArrayStoreWithNullCheck
SYM 64 0.00 jitWriteBarrierStoreGenerational
SYM 50 0.00 walkJITFrameSlots.isra.5
SYM 43 0.00 samplerThreadProc
SYM 38 0.00 TR_IProfiler::findOrCreateEntry(int,-unsigned-long,-bool)
SYM 37 0.00 TR_IProfiler::findOrCreateMethodEntry(J9Method*,-J9Method*,-bool,-unsigned-int)
SYM 31 0.00 returnFromJIT1
SYM 30 0.00 fast_jitCheckAssignable
SYM 27 0.00 fast_jitNewObject
SYM 25 0.00 jitReferenceArrayCopy
SYM 24 0.00 avl_jit_artifact_searchCompare
SYM 24 0.00 arrayTranslateTRTO
SYM 22 0.00 avl_search
SYM 22 0.00 TR::DefaultCompilationStrategy::processJittedSample(TR_MethodEvent*)
SYM 21 0.00 TR_IProfiler::parseBuffer(J9VMThread*,-unsigned-char-const*,-unsigned-long,-bool)
SYM 21 0.00 jitExceptionHandlerSearch
SYM 20 0.00 returnFromJIT0
SYM 20 0.00 old_slow_jitAMultiNewArray
SYM 17 0.00 jitExitInterpreterJ
SYM 15 0.00 jitWalkFrame
SYM 14 0.00 getJitTotalFrameSize
SYM 14 0.00 returnFromJITJ
SYM 13 0.00 j2iTransition
SYM 12 0.00 jitMethodSampleInterrupt
SYM 11 0.00 fast_jitCheckIfFinalizeObject
SYM 11 0.00 jitAddSpilledRegisters
SYM 9 0.00 jitNewArray
MOD 210 0.01 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libjclse29.so
SYM 104 0.01 updateNonHeapMemoryPoolSizes.isra.2
SYM 55 0.00 Java_java_lang_Class_getEnclosingObjectClass
SYM 23 0.00 getEnclosingMethodForROMClass
SYM 10 0.00 getClassContextIterator
SYM 7 0.00 latestUserDefinedLoaderIterator
SYM 3 0.00 JVM_LatestUserDefinedLoader_Impl
SYM 2 0.00 JVM_GetClassContext_Impl
SYM 2 0.00 Java_sun_misc_Unsafe_setMemory__Ljava_lang_Object_2JJB
SYM 1 0.00 gcStartEvent
SYM 1 0.00 Java_com_ibm_lang_management_internal_SysinfoCpuTime_getCpuUtilizationImpl
SYM 1 0.00 Java_java_lang_Class_getMethodImpl
SYM 1 0.00 Java_sun_misc_Unsafe_allocateDBBMemory
MOD 12134 0.71 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9vm29.so
SYM 1927 0.11 Fast_java_lang_J9VMInternals_primitiveClone
SYM 1876 0.11 VM_BytecodeInterpreter::run(J9VMThread*)
SYM 1248 0.07 Fast_java_lang_J9VMInternals_identityHashCode
SYM 915 0.05 objectMonitorExit
SYM 766 0.04 objectMonitorEnterNonBlocking
SYM 733 0.04 walkStackFrames
SYM 501 0.03 getIntField
SYM 469 0.03 getObjectField
SYM 399 0.02 setArrayRegion
SYM 373 0.02 walkFrame
SYM 342 0.02 instanceOfOrCheckCast
SYM 280 0.02 internalEnterVMFromJNI
SYM 268 0.02 Fast_java_lang_System_currentTimeMillis
SYM 239 0.01 j9jni_createLocalRef
SYM 183 0.01 getArrayRegion
SYM 170 0.01 exceptionCheck
SYM 159 0.01 internalExitVMToJNI
SYM 153 0.01 Fast_java_lang_reflect_Array_newArrayImpl
SYM 150 0.01 Fast_java_lang_Class_getComponentType
SYM 141 0.01 bytecodeLoop
SYM 96 0.01 Fast_java_lang_Class_getModifiersImpl
SYM 83 0.00 <plt>
SYM 69 0.00 classHashEqualFn
SYM 67 0.00 c_cInterpreter
SYM 60 0.00 getSimpleNameForROMClass
SYM 50 0.00 mapLocalSet.isra.0
SYM 26 0.00 copyStringToUTF8Helper
SYM 25 0.00 searchClassForMethodCommon
SYM 23 0.00 bcvCheckClassNameInLoading
SYM 23 0.00 cInterpGetStackClassJEP176Iterator
SYM 19 0.00 hashTableFind
SYM 17 0.00 javaLookupMethodImpl
SYM 16 0.00 getPrimitiveArrayCritical
SYM 14 0.00 verifyQualifiedName
SYM 14 0.00 allocate_dimension
SYM 14 0.00 copyStringToUTF8WithMemAlloc
SYM 13 0.00 helperMultiANewArray
SYM 13 0.00 Fast_java_lang_Thread_isInterruptedImpl
SYM 13 0.00 j9localmap_LocalBitsForPC
SYM 12 0.00 Fast_java_lang_Class_forNameImpl
SYM 10 0.00 javaCheckAsyncMessages
SYM 10 0.00 hashClassTableAtString
SYM 10 0.00 Fast_java_lang_Object_notifyAll
SYM 7 0.00 monitorTableAt
SYM 7 0.00 runCallInMethod
MOD 8744 0.51 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9jit29.so
SYM 1403 0.08 jitGetMapsFromPC
SYM 902 0.05 jitGetExceptionTableFromPC
SYM 854 0.05 old_fast_jitLookupInterfaceMethod
SYM 829 0.05 fast_jitInstanceOf
SYM 793 0.05 jitWalkStackFrames
SYM 461 0.03 sixteencharsTO
SYM 334 0.02 jitLookupInterfaceMethod
SYM 245 0.01 fast_jitMonitorExit
SYM 195 0.01 fast_jitCheckCast
SYM 157 0.01 fast_jitMethodMonitorEntry
SYM 148 0.01 getJitTotalFrameSize
SYM 138 0.01 getFirstInlinedCallSiteWithByteCodeInfo
SYM 136 0.01 IPicLookupDispatch
SYM 135 0.01 fast_jitMethodMonitorExit
SYM 134 0.01 hash_jit_artifact_search
SYM 127 0.01 jitMethodMonitorExit
SYM 118 0.01 jitMonitorExit
SYM 97 0.01 jitCheckCast
SYM 96 0.01 jitMethodMonitorEntry
SYM 86 0.01 fast_jitWriteBarrierStoreGenerational
SYM 73 0.00 jitMonitorEntry
SYM 66 0.00 TR_IPMethodHashTableEntry::add(TR_OpaqueMethodBlock*,-TR_OpaqueMethodBlock*,-unsigned-int)
SYM 63 0.00 mergeIPicLookupDispatch
SYM 57 0.00 fast_jitMonitorEntry
SYM 47 0.00 jitWriteBarrierStoreGenerational
SYM 44 0.00 samplerThreadProc
SYM 43 0.00 fast_jitTypeCheckArrayStoreWithNullCheck
SYM 42 0.00 TR_IProfiler::findOrCreateEntry(int,-unsigned-long,-bool)
SYM 41 0.00 returnFromJIT1
SYM 40 0.00 getFirstInlinedCallSite
SYM 40 0.00 TR_IProfiler::findOrCreateMethodEntry(J9Method*,-J9Method*,-bool,-unsigned-int)
SYM 38 0.00 walkJITFrameSlots.isra.5
SYM 37 0.00 avl_jit_artifact_searchCompare
SYM 35 0.00 fast_jitNewObject
SYM 32 0.00 avl_search
SYM 29 0.00 TR::DefaultCompilationStrategy::processJittedSample(TR_MethodEvent*)
SYM 28 0.00 fast_jitCheckAssignable
SYM 26 0.00 jitWalkFrame
SYM 25 0.00 arrayTranslateTRTO
SYM 24 0.00 jitReferenceArrayCopy
SYM 22 0.00 TR_IProfiler::parseBuffer(J9VMThread*,-unsigned-char-const*,-unsigned-long,-bool)
SYM 20 0.00 getJitInlinedCallInfo
SYM 20 0.00 jitExitInterpreterJ
SYM 18 0.00 returnFromJITJ
SYM 15 0.00 old_slow_jitAMultiNewArray
MOD 2413 0.14 /home/harryayu2/sdks/java11/lib/compressedrefs/libjclse29.so
SYM 1046 0.06 getCallerClassJEP176Iterator
SYM 571 0.03 JVM_GetCallerClass_Impl
SYM 505 0.03 Java_sun_misc_Unsafe_copyMemory__Ljava_lang_Object_2JLjava_lang_Object_2JJ
SYM 138 0.01 updateNonHeapMemoryPoolSizes.isra.2
SYM 74 0.00 Java_java_lang_Class_getEnclosingObjectClass
SYM 21 0.00 getEnclosingMethodForROMClass
SYM 17 0.00 <plt>
SYM 16 0.00 JVM_GetClassAccessFlags_Impl
SYM 12 0.00 getClassContextIterator
SYM 4 0.00 latestUserDefinedLoaderIterator
SYM 3 0.00 Java_java_lang_Class_getMethodImpl
SYM 2 0.00 Java_sun_misc_Unsafe_setMemory__Ljava_lang_Object_2JJB
SYM 1 0.00 Java_sun_misc_Unsafe_park
SYM 1 0.00 managementLocalGCStart
SYM 1 0.00 JVM_LatestUserDefinedLoader_Impl
SYM 1 0.00 Java_sun_misc_Unsafe_allocateDBBMemory
walkStackFrames
walkFrame
instanceOfOrCheckCast
internalEnterVMFromJNI
j9jni_createLocalRef
jitGetMapsFromPC
jitGetExceptionTableFromPC
jitWalkStackFrames
getCallerClassJEP176Iterator
JVM_GetCallerClass_Impl
Java_sun_misc_Unsafe_copyMemory__Ljava_lang_Object_2JLjava_lang_Object_2JJ
Looks like we are doing more stack walking on Java 11 for some reason. It could be due to increased GCs but could also result from things like exceptions being thrown.
Results for JDK=/home/harryayu2/sdks/java8 jvmOpts=-Xmx1G -Xnoaot -Xshareclasses:none -Xjit:initialOptLevel=cold,inhibitRecompilation
Throughput avg=2092.65 min=2086.40 max=2098.90 stdDev=8.8 maxVar=0.60% confInt=1.89% samples= 2
Intermediate results:
Run 0 196.7 2003.1 2083.2 2086.4 Avg=2086 CPU=21558 ms Footprint=514248 KB
Run 1 135.5 1980.0 2077.7 2098.9 Avg=2099 CPU=22064 ms Footprint=522100 KB
CompTime avg=21811.00 min=21558.00 max=22064.00 stdDev=357.8 maxVar=2.35% confInt=7.32% samples= 2
Footprint avg=518174.00 min=514248.00 max=522100.00 stdDev=5552.2 maxVar=1.53% confInt=4.78% samples= 2
Results for JDK=/home/harryayu2/sdks/java8 jvmOpts=-Xmx1G -Xnoaot -Xshareclasses:none -Xjit:initialOptLevel=cold,inhibitRecompilation Throughput avg=2077.04 min=2021.00 max=2104.30 stdDev=35.2 maxVar=4.12% confInt=1.61% samples= 5 Intermediate results: Run 0 198.5 1987.4 2085.0 2104.3 Avg=2104 CPU=21546 ms Footprint=535184 KB Run 1 132.1 1996.6 2078.8 2102.3 Avg=2102 CPU=21593 ms Footprint=505600 KB Run 2 188.8 1994.8 2093.6 2064.4 Avg=2064 CPU=21546 ms Footprint=517052 KB Run 3 198.7 2007.3 2089.6 2093.2 Avg=2093 CPU=21613 ms Footprint=523504 KB Run 4 187.0 1950.9 2046.9 2021.0 Avg=2021 CPU=22065 ms Footprint=512092 KB CompTime avg=21672.60 min=21546.00 max=22065.00 stdDev=221.3 maxVar=2.41% confInt=0.97% samples= 5 Footprint avg=518686.40 min=505600.00 max=535184.00 stdDev=11322.4 maxVar=5.85% confInt=2.08% samples= 5
Results for JDK=/home/harryayu2/sdks/java11 jvmOpts=-Xmx1G -Xnoaot -Xshareclasses:none -Xjit:initialOptLevel=cold,inhibitRecompilation Throughput avg=2002.30 min=1982.50 max=2022.10 stdDev=28.0 maxVar=2.00% confInt=6.24% samples= 2 Intermediate results: Run 0 178.6 1900.8 2016.3 1982.5 Avg=1982 CPU=22021 ms Footprint=515560 KB Run 1 175.1 1883.2 2008.2 2022.1 Avg=2022 CPU=22589 ms Footprint=521840 KB CompTime avg=22305.00 min=22021.00 max=22589.00 stdDev=401.6 maxVar=2.58% confInt=8.04% samples= 2 Footprint avg=518700.00 min=515560.00 max=521840.00 stdDev=4440.6 maxVar=1.22% confInt=3.82% samples= 2
Results for JDK=/home/harryayu2/sdks/java11 jvmOpts=-Xmx1G -Xnoaot -Xshareclasses:none -Xjit:initialOptLevel=cold,inhibitRecompilation Throughput avg=1999.25 min=1985.60 max=2012.90 stdDev=19.3 maxVar=1.37% confInt=4.31% samples= 2 Intermediate results: Run 0 182.7 1901.4 1954.7 2012.9 Avg=2013 CPU=22176 ms Footprint=526152 KB Run 1 192.8 1914.4 2008.2 1985.6 Avg=1986 CPU=22266 ms Footprint=521652 KB CompTime avg=22221.00 min=22176.00 max=22266.00 stdDev=63.6 maxVar=0.41% confInt=1.28% samples= 2 Footprint avg=523902.00 min=521652.00 max=526152.00 stdDev=3182.0 maxVar=0.86% confInt=2.71% samples= 2
Results for JDK=/home/harryayu2/sdks/java11 jvmOpts=-Xmx1G -Xnoaot -Xshareclasses:none -Xjit:initialOptLevel=cold,inhibitRecompilation Throughput avg=1988.32 min=1965.20 max=2017.00 stdDev=23.3 maxVar=2.64% confInt=1.12% samples= 5 Intermediate results: Run 0 191.6 1881.5 1989.3 1969.4 Avg=1969 CPU=22192 ms Footprint=517284 KB Run 1 186.9 1872.5 1994.3 2008.6 Avg=2009 CPU=22261 ms Footprint=520500 KB Run 2 174.0 1879.3 1971.4 1981.4 Avg=1981 CPU=21970 ms Footprint=527312 KB Run 3 152.9 1893.6 1981.6 1965.2 Avg=1965 CPU=22197 ms Footprint=528852 KB Run 4 179.9 1911.9 1994.1 2017.0 Avg=2017 CPU=22231 ms Footprint=539948 KB CompTime avg=22170.20 min=21970.00 max=22261.00 stdDev=115.3 maxVar=1.32% confInt=0.50% samples= 5 Footprint avg=526779.20 min=517284.00 max=539948.00 stdDev=8769.0 maxVar=4.38% confInt=1.59% samples= 5
- 4% gap
Level=1 numComp=14548
Run 1 Throughput=2044.3 WS=518380 CPU=22280 Errors=0
Results for JDK=/home/harryayu2/sdks/java8 jvmOpts=-Xmx1G -Xnoaot -Xshareclasses:none -Xjit:initialOptLevel=cold,inhibitRecompilation -agentlib:jprof=tprof,logpath=/home/harryayu2/scripts
Throughput avg=2044.30 min=2044.30 max=2044.30 stdDev=0.0 maxVar=0.00% confInt=0.00% samples= 1
Intermediate results:
Run 0 160.1 1955.7 2033.1 2044.3 Avg=2044 CPU=22280 ms Footprint=518380 KB
CompTime avg=22280.00 min=22280.00 max=22280.00 stdDev=0.0 maxVar=0.00% confInt=0.00% samples= 1
Footprint avg=518380.00 min=518380.00 max=518380.00 stdDev=0.0 maxVar=0.00% confInt=0.00% samples= 1
)) Process
================================
LAB TKS %%% NAMES
PID 857775 49.27 SystemProcess_0000
PID 670887 38.54 java_170023
PID 162686 9.35 db2sysc_16ff83
PID 42259 2.43 java_170998
PID 4006 0.23 swtrace_170974
PID 670887 38.54 java_170023
MOD 393180 22.59 JITCODE
MOD 197202 11.33 vmlinux
MOD 18422 1.06 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9gc29.so
MOD 10911 0.63 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9vm29.so
MOD 10684 0.61 [ip_tables]
MOD 8206 0.47 [nf_conntrack]
MOD 6852 0.39 /usr/lib64/libpthread-2.17.so
MOD 5880 0.34 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9jit29.so
MOD 4600 0.26 /usr/lib64/libc-2.17.so
MOD 2160 0.12 /home/harryayu2/sdks/java8/jre/lib/amd64/libnet.so
MOD 18422 1.06 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9gc29.so
SYM 6992 0.40 MM_Scavenger::incrementalScanCacheBySlot(MM_EnvironmentStandard*,-MM_CopyScanCacheStandard*)
SYM 2022 0.12 GC_ObjectHeapIteratorAddressOrderedList::nextObjectNoAdvance()
SYM 1988 0.11 GC_ObjectModelDelegate::calculateObjectDetailsForCopy(MM_EnvironmentBase*,-MM_ForwardedHeader*,-unsigned-long*,-unsigned-long*,-unsigned-long*)
SYM 1304 0.07 MM_ScavengerDelegate::getObjectScanner(MM_EnvironmentStandard*,-J9Object*,-void*,-unsigned-long)
SYM 827 0.05 MM_ForwardedHeader::setForwardedObjectInternal(J9Object*,-unsigned-long)
SYM 470 0.03 GC_ObjectHeapIteratorAddressOrderedList::shouldReturnCurrentObject()
SYM 305 0.02 MM_Scavenger::scavengeRememberedSetList(MM_EnvironmentStandard*)
SYM 268 0.02 MM_Scavenger::getArraySplitAmount(MM_EnvironmentStandard*,-unsigned-long)
SYM 232 0.01 MM_ForwardedHeader::getForwardedObject()
SYM 179 0.01 MM_ConcurrentGC::localMark(MM_EnvironmentBase*,-unsigned-long)
SYM 158 0.01 GC_ArrayletObjectModelBase::getSpineSizeWithoutHeader(GC_ArrayletObjectModelBase::ArrayLayout,-unsigned-long,-unsigned-long,-bool)
SYM 142 0.01 MM_ScavengerStats::getFlipHistory(unsigned-long)
SYM 132 0.01 MM_Scavenger::splitIndexableObjectScanner(MM_EnvironmentStandard*,-GC_ObjectScanner*,-unsigned-long,-J9Object**)
SYM 120 0.01 OMR_GC_AllocateObject(OMR_VMThread*,-MM_AllocateInitialization*)
SYM 92 0.01 MM_Scavenger::getNextScanCache(MM_EnvironmentStandard*)
MOD 10911 0.63 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9vm29.so
SYM 1925 0.11 Fast_java_lang_J9VMInternals_primitiveClone
SYM 1827 0.10 VM_BytecodeInterpreterCompressed::run(J9VMThread*)
SYM 1198 0.07 objectMonitorExit
SYM 1191 0.07 Fast_java_lang_J9VMInternals_identityHashCode
SYM 1022 0.06 objectMonitorEnterNonBlocking
SYM 660 0.04 getIntField
SYM 520 0.03 getObjectField
SYM 484 0.03 setArrayRegion
SYM 322 0.02 Fast_java_lang_System_currentTimeMillis
SYM 195 0.01 getArrayRegion
SYM 154 0.01 exceptionCheck
SYM 124 0.01 bytecodeLoopCompressed
SYM 118 0.01 Fast_java_lang_Class_getModifiersImpl
SYM 110 0.01 Fast_java_lang_reflect_Array_newArrayImpl
SYM 110 0.01 c_cInterpreter
MOD 5880 0.34 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libj9jit29.so
SYM 867 0.05 fast_jitInstanceOf
SYM 761 0.04 old_fast_jitLookupInterfaceMethod
SYM 462 0.03 sixteencharsTO
SYM 365 0.02 IPicLookupDispatch
SYM 280 0.02 jitLookupInterfaceMethod
SYM 245 0.01 fast_jitMonitorExit
SYM 233 0.01 jitGetExceptionTableFromPC
SYM 209 0.01 fast_jitCheckCast
SYM 189 0.01 jitMonitorExit
SYM 136 0.01 fast_jitMonitorEntry
SYM 134 0.01 jitGetMapsFromPC
SYM 121 0.01 fast_jitMethodMonitorEntry
SYM 107 0.01 jitMethodMonitorExit
SYM 107 0.01 fast_jitMethodMonitorExit
SYM 97 0.01 hash_jit_artifact_search
SYM 96 0.01 jitCheckCast
SYM 91 0.01 jitWalkStackFrames
SYM 90 0.01 jitMethodMonitorEntry
SYM 84 0.00 mergeIPicLookupDispatch
MOD 220 0.01 /home/harryayu2/sdks/java8/jre/lib/amd64/compressedrefs/libjclse29.so
SYM 105 0.01 updateNonHeapMemoryPoolSizes.isra.2
SYM 70 0.00 Java_java_lang_Class_getEnclosingObjectClass
SYM 22 0.00 getEnclosingMethodForROMClass
SYM 14 0.00 getClassContextIterator
SYM 5 0.00 latestUserDefinedLoaderIterator
SYM 2 0.00 unsafeAllocateDBBMemory
SYM 1 0.00 Java_java_security_AccessController_getAccSnapshot
SYM 1 0.00 Java_java_lang_Class_getMethodImpl
Run 1 Throughput=1953.4 WS=551508 CPU=22273 Errors=0
Results for JDK=/home/harryayu2/sdks/java11 jvmOpts=-Xmx1G -Xnoaot -Xshareclasses:none -Xjit:initialOptLevel=cold,inhibitRecompilation -agentlib:jprof=tprof,logpath=/home/harryayu2/scripts
Throughput avg=1953.40 min=1953.40 max=1953.40 stdDev=0.0 maxVar=0.00% confInt=0.00% samples= 1
Intermediate results:
Run 0 170.2 1855.0 1941.1 1953.4 Avg=1953 CPU=22273 ms Footprint=551508 KB
CompTime avg=22273.00 min=22273.00 max=22273.00 stdDev=0.0 maxVar=0.00% confInt=0.00% samples= 1
Footprint avg=551508.00 min=551508.00 max=551508.00 stdDev=0.0 maxVar=0.00% confInt=0.00% samples= 1
)) Process
================================
LAB TKS %%% NAMES
PID 845935 49.42 SystemProcess_0000
PID 670665 39.18 java_16d3f3
PID 149936 8.76 db2sysc_16d34f
PID 38462 2.25 java_16dd79
PID 3839 0.22 swtrace_16dd55
PID 670665 39.18 java_16d3f3
MOD 398511 23.28 JITCODE
MOD 186268 10.88 vmlinux
MOD 16804 0.98 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9gc29.so
MOD 12584 0.74 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9vm29.so
MOD 10414 0.61 [ip_tables]
MOD 8809 0.51 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9jit29.so
MOD 8367 0.49 [nf_conntrack]
MOD 6839 0.40 /usr/lib64/libpthread-2.17.so
MOD 4645 0.27 /usr/lib64/libc-2.17.so
MOD 2499 0.15 /home/harryayu2/sdks/java11/lib/compressedrefs/libjclse29.so
MOD 1989 0.12 /home/harryayu2/sdks/java11/lib/libnet.so
MOD 16804 0.98 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9gc29.so
SYM 6153 0.36 MM_Scavenger::incrementalScanCacheBySlot(MM_EnvironmentStandard*,-MM_CopyScanCacheStandard*)
SYM 1722 0.10 GC_ObjectHeapIteratorAddressOrderedList::nextObjectNoAdvance()
SYM 1673 0.10 GC_ObjectModelDelegate::calculateObjectDetailsForCopy(MM_EnvironmentBase*,-MM_ForwardedHeader*,-unsigned-long*,-unsigned-long*,-unsigned-long*)
SYM 1156 0.07 MM_ScavengerDelegate::getObjectScanner(MM_EnvironmentStandard*,-J9Object*,-void*,-unsigned-long)
SYM 733 0.04 MM_ForwardedHeader::setForwardedObjectInternal(J9Object*,-unsigned-long)
SYM 433 0.03 GC_ObjectHeapIteratorAddressOrderedList::shouldReturnCurrentObject()
SYM 326 0.02 MM_ConcurrentGC::localMark(MM_EnvironmentBase*,-unsigned-long)
SYM 268 0.02 MM_Scavenger::scavengeRememberedSetList(MM_EnvironmentStandard*)
SYM 249 0.01 MM_Scavenger::getArraySplitAmount(MM_EnvironmentStandard*,-unsigned-long)
SYM 225 0.01 MM_ForwardedHeader::getForwardedObject()
SYM 157 0.01 GC_ArrayletObjectModelBase::getSpineSizeWithoutHeader(GC_ArrayletObjectModelBase::ArrayLayout,-unsigned-long,-unsigned-long,-bool)
SYM 122 0.01 MM_ScavengerStats::getFlipHistory(unsigned-long)
MOD 12584 0.74 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9vm29.so
SYM 1866 0.11 Fast_java_lang_J9VMInternals_primitiveClone
SYM 1803 0.11 VM_BytecodeInterpreterCompressed::run(J9VMThread*)
SYM 1390 0.08 Fast_java_lang_J9VMInternals_identityHashCode
SYM 1108 0.06 objectMonitorExit
SYM 956 0.06 objectMonitorEnterNonBlocking
SYM 707 0.04 walkStackFrames
SYM 513 0.03 getIntField
SYM 464 0.03 instanceOfOrCheckCast
SYM 461 0.03 setArrayRegion
SYM 457 0.03 getObjectField
SYM 330 0.02 internalEnterVMFromJNI
SYM 310 0.02 walkFrame
SYM 304 0.02 Fast_java_lang_System_currentTimeMillis
SYM 205 0.01 getArrayRegion
SYM 198 0.01 j9jni_createLocalRef
SYM 166 0.01 internalExitVMToJNI
SYM 152 0.01 exceptionCheck
SYM 140 0.01 Fast_java_lang_reflect_Array_newArrayImpl
SYM 126 0.01 Fast_java_lang_Class_getComponentType
SYM 122 0.01 bytecodeLoopCompressed
SYM 122 0.01 Fast_java_lang_Class_getModifiersImpl
MOD 8809 0.51 /home/harryayu2/sdks/java11/lib/compressedrefs/libj9jit29.so
SYM 1346 0.08 jitGetMapsFromPC
SYM 904 0.05 fast_jitInstanceOf
SYM 868 0.05 jitGetExceptionTableFromPC
SYM 745 0.04 old_fast_jitLookupInterfaceMethod
SYM 738 0.04 jitWalkStackFrames
SYM 508 0.03 sixteencharsTO
SYM 288 0.02 jitLookupInterfaceMethod
SYM 269 0.02 fast_jitMonitorExit
SYM 250 0.01 IPicLookupDispatch
SYM 232 0.01 fast_jitCheckCast
SYM 201 0.01 getFirstInlinedCallSiteWithByteCodeInfo
SYM 169 0.01 jitMethodMonitorExit
SYM 157 0.01 jitMonitorExit
SYM 152 0.01 getJitTotalFrameSize
SYM 148 0.01 jitMethodMonitorEntry
SYM 137 0.01 fast_jitMethodMonitorExit
SYM 120 0.01 fast_jitMethodMonitorEntry
SYM 108 0.01 hash_jit_artifact_search
MOD 2499 0.15 /home/harryayu2/sdks/java11/lib/compressedrefs/libjclse29.so
SYM 1187 0.07 getCallerClassJEP176Iterator
SYM 590 0.03 JVM_GetCallerClass_Impl
SYM 506 0.03 Java_sun_misc_Unsafe_copyMemory__Ljava_lang_Object_2JLjava_lang_Object_2JJ
SYM 84 0.00 updateNonHeapMemoryPoolSizes.isra.2
SYM 57 0.00 Java_java_lang_Class_getEnclosingObjectClass
SYM 30 0.00 <plt>
SYM 22 0.00 getEnclosingMethodForROMClass
SYM 11 0.00 getClassContextIterator
SYM 3 0.00 Java_java_lang_Class_getMethodImpl
SYM 3 0.00 latestUserDefinedLoaderIterator
SYM 2 0.00 unsafeAllocateDBBMemory
SYM 1 0.00 JVM_LatestUserDefinedLoader_Impl
SYM 1 0.00 JVM_GetClassContext_Impl
SYM 1 0.00 Java_sun_misc_Unsafe_setMemory__Ljava_lang_Object_2JJB
SYM 1 0.00 Java_sun_misc_Unsafe_allocateDBBMemory
MOD 2499 0.15 /home/harryayu2/sdks/java11/lib/compressedrefs/libjclse29.so
SYM 1187 0.07 getCallerClassJEP176Iterator
SYM 590 0.03 JVM_GetCallerClass_Impl
This is interesting as we have special handling for sun.reflect.Reflection.getCallerClass()
in the JIT. In JDK 9+, this moved to jdk.internal.reflect.Reflection.getCallerClass()
.
I did a very quick scan of the code and don't see a mapping to have the JIT treat jdk.internal.reflect
the same as sun.reflect
.
I did a very quick scan of the code and don't see a mapping to have the JIT treat
jdk.internal.reflect
the same assun.reflect
.
It is aliased: https://github.com/eclipse/openj9/blob/0050bf34de88eac5bbf1cb9643c41f5e983bc42e/runtime/compiler/env/j9method.cpp#L4303 https://github.com/eclipse/openj9/blob/0050bf34de88eac5bbf1cb9643c41f5e983bc42e/runtime/compiler/env/j9method.cpp#L4395
I'm not sure why we are not inlining the calls in Java 11. It may be worth collecting a callgraph and figuring out which method those ticks are coming from and getting a trace log of it. It seems we are calling out to the natives in Java 11 and not in Java 8.
I'm not sure why we are not inlining the calls in Java 11
It should be noted that the experiments used cold compilations that have a low inlining budget which could easily be overrun.
The time in the stack walker which could be exceptions is something @BeverlyXu and I are looking at. Will update once we get to the bottom of it.
liberty version: liberty-20.0.0.2_wlp_webProfile7_java8 (https://developer.ibm.com/wasdev/downloads/#asset/runtimes-webprofile7-ibm-java)
(2257.87-2175.72)/2257.87 = 0.03638384849
3.6% Throughput gap.