hotspot inlining decision seems to be random
Ulf Zibis
Ulf.Zibis at gmx.de
Fri Dec 11 16:27:43 PST 2009
Please refer to:
[1]
https://java-nio-charset-enhanced.dev.java.net/source/browse/java-nio-charset-enhanced/branches/j7_EUC_TW/log/C_d_b_reverse1-2_highSurrogate_PA.xml?rev=866&view=markup
[2]
https://java-nio-charset-enhanced.dev.java.net/source/browse/java-nio-charset-enhanced/branches/j7_EUC_TW/log/C_d_b_reverse1-2_highSurrogate_PA_2.xml?rev=866&view=markup
I have run [3] the same code [4] 2 times.
On 1st run, method highSurrogate() [5] was inlined in Decoder$decode()
[6] as hot, but not on 2nd run.
Can someone explain this, because method highSurrogate() was executed
26,314,402 times (1.4 * 10 * 25 * 65536) ?
In 2nd case [2] hotspot log says 'never executed' (line 125) to
sun.nio.cs.ext.EUC_TW_C_d_b_reverse1$Decoder::decode
and 'executed < MinInliningThreshold times' (line 215) to
java.lang.Character::highSurrogate.
-Ulf
[3]
https://java-nio-charset-enhanced.dev.java.net/source/browse/java-nio-charset-enhanced/branches/j7_EUC_TW/nbproject/configs/C_d_b_reverse1_2_PA.properties?rev=866&view=markup
[4]
https://java-nio-charset-enhanced.dev.java.net/source/browse/java-nio-charset-enhanced/branches/j7_EUC_TW/src/sun/nio/cs/ext/EUC_TWBenchmark.java?rev=866&view=markup
[5]
https://java-nio-charset-enhanced.dev.java.net/source/browse/java-nio-charset-enhanced/branches/j7_EUC_TW/src/java/lang/Character.java?rev=866&view=markup
[6]
https://java-nio-charset-enhanced.dev.java.net/source/browse/java-nio-charset-enhanced/branches/j7_EUC_TW/src/sun/nio/cs/ext/EUC_TW_C_d_b_reverse1.java?rev=866&view=markup
More information about the hotspot-compiler-dev
mailing list