-
Bug
-
Resolution: Other
-
P4
-
8u40, 9
-
team
-
generic
-
generic
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8060743 | 9 | Marcus Lagergren | P4 | Resolved | Fixed | b36 |
JDK-8064248 | 8u45 | Marcus Lagergren | P4 | Resolved | Fixed | b01 |
JDK-8060477 | 8u40 | Marcus Lagergren | P4 | Resolved | Fixed | b12 |
JDK-8070485 | emb-8u47 | Marcus Lagergren | P4 | Resolved | Fixed | team |
Running Nashorn/Octane benchmark with:
~/trunks/jdk9-dev/build/linux-x86_64-normal-server-release/images/j2sdk-image/bin/java -XX:+CITime -jar ~/trunks/jdk9-dev/build/linux-x86_64-normal-server-release/images/j2sdk-image/jre/lib/ext/nashorn.jar --class-cache-size=0 --persistent-code-cache=false -scripting --log=time test/script/basic/compile-octane.js -- --iterations 10
Yields the hotspot at:
7.365 jdk.nashorn.internal.runtime.linker.NashornLinker.getGuardedInvocation
2.992 jdk.nashorn.internal.runtime.ScriptObject.lookup
2.292 jdk.nashorn.internal.runtime.ScriptObject.findSetMethod
2.262 jdk.nashorn.internal.runtime.GlobalConstants.findSetMethod
1.601 jdk.internal.dynalink.DynamicLinker.getLinkedCallSiteLocation
1.601 java.lang.Throwable.getStackTrace
That is, out of 50 seconds of run, we spend 1.6 seconds doing Throwable.getStackTrace. This seems to be a part of diagnostic logging here:
synchronized GuardedInvocation findSetMethod(final FindProperty find, final ScriptObject receiver, final GuardedInvocation inv, final CallSiteDescriptor desc, final LinkRequest request) {
...
if (!acc.mayRetry()) {
log.info("*** SET: Giving up on " + quote(name) + " - retry count has exceeded " + DynamicLinker.getLinkedCallSiteLocation());
return null;
}
...
~/trunks/jdk9-dev/build/linux-x86_64-normal-server-release/images/j2sdk-image/bin/java -XX:+CITime -jar ~/trunks/jdk9-dev/build/linux-x86_64-normal-server-release/images/j2sdk-image/jre/lib/ext/nashorn.jar --class-cache-size=0 --persistent-code-cache=false -scripting --log=time test/script/basic/compile-octane.js -- --iterations 10
Yields the hotspot at:
7.365 jdk.nashorn.internal.runtime.linker.NashornLinker.getGuardedInvocation
2.992 jdk.nashorn.internal.runtime.ScriptObject.lookup
2.292 jdk.nashorn.internal.runtime.ScriptObject.findSetMethod
2.262 jdk.nashorn.internal.runtime.GlobalConstants.findSetMethod
1.601 jdk.internal.dynalink.DynamicLinker.getLinkedCallSiteLocation
1.601 java.lang.Throwable.getStackTrace
That is, out of 50 seconds of run, we spend 1.6 seconds doing Throwable.getStackTrace. This seems to be a part of diagnostic logging here:
synchronized GuardedInvocation findSetMethod(final FindProperty find, final ScriptObject receiver, final GuardedInvocation inv, final CallSiteDescriptor desc, final LinkRequest request) {
...
if (!acc.mayRetry()) {
log.info("*** SET: Giving up on " + quote(name) + " - retry count has exceeded " + DynamicLinker.getLinkedCallSiteLocation());
return null;
}
...
- backported by
-
JDK-8060477 GlobalConstants.findSetMethod calls DynamicLinker.getLinkedCallSiteLocation, which does Throwables
-
- Resolved
-
-
JDK-8060743 GlobalConstants.findSetMethod calls DynamicLinker.getLinkedCallSiteLocation, which does Throwables
-
- Resolved
-
-
JDK-8064248 GlobalConstants.findSetMethod calls DynamicLinker.getLinkedCallSiteLocation, which does Throwables
-
- Resolved
-
-
JDK-8070485 GlobalConstants.findSetMethod calls DynamicLinker.getLinkedCallSiteLocation, which does Throwables
-
- Resolved
-