[10] RFR: 8183001: Various inlining improvements
Claes Redestad
claes.redestad at oracle.com
Tue Jun 27 12:51:43 UTC 2017
Hi,
by moving some small method implementations to their respective header
file we can help inlining across compilation units, with a resulting
improvement to startup.
bug: https://bugs.openjdk.java.net/browse/JDK-8183001
webrev: http://cr.openjdk.java.net/~redestad/8183001/hotspot.01/
The static footprint of the JVM only sees a negligible increase (<2Kb).
perf stat -r 500 <minimal hello world*>:
Baseline:
40.005884 task-clock (msec) # 1.140 CPUs
utilized ( +- 0.31% )
152 context-switches # 0.004
M/sec ( +- 0.51% )
18 cpu-migrations # 0.460
K/sec ( +- 0.30% )
2,023 page-faults # 0.051
M/sec ( +- 0.11% )
103,130,499 cycles # 2.578
GHz ( +- 0.16% )
97,424,791 instructions # 0.94 insns per
cycle ( +- 0.02% )
18,727,758 branches # 468.125
M/sec ( +- 0.02% )
534,655 branch-misses # 2.85% of all
branches ( +- 0.07% )
0.035099175 seconds time
elapsed ( +- 0.28% )
Patch applied:
38.705972 task-clock (msec) # 1.144 CPUs
utilized ( +- 0.32% )
152 context-switches # 0.004
M/sec ( +- 0.52% )
18 cpu-migrations # 0.476
K/sec ( +- 0.29% )
2,026 page-faults # 0.052
M/sec ( +- 0.11% )
100,878,811 cycles # 2.606
GHz ( +- 0.19% )
95,987,273 instructions # 0.95 insns per
cycle ( +- 0.02% )
18,461,615 branches # 476.971
M/sec ( +- 0.02% )
532,051 branch-misses # 2.88% of all
branches ( +- 0.07% )
0.033836545 seconds time
elapsed ( +- 0.28% )
Thanks!
/Claes
* "minimal": image consisting only of java.base and other tuning:
java -Xshare:on -XX:-UsePerfData -XX:CICompilerCount=2
-XX:TieredStopAtLevel=1 -XX:+UseSerialGC -Xmx16m Hello
More information about the hotspot-runtime-dev
mailing list