-
Bug
-
Resolution: Fixed
-
P3
-
None
-
b156
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8174441 | 10 | Claes Redestad | P3 | Resolved | Fixed | b01 |
During module setup, we do a number of transformations from package name strings to the VM internal form, e.g., "java.lang" -> "java/lang".
Proof-of-concept patch:
http://cr.openjdk.java.net/~redestad/scratch/module_package_names/
By moving this transformation into the VM we improve a number of startup metrics: fewer early JIT compilations triggered, first GC postponed, and a small improvement in wall clock time (as measured on 1 CPU, 8 cores, no active hyperthreads):
$ time for i in {1..100} ; do $BASELINE/bin/java Hello > /dev/null ; done
real 0m12.856s
user 0m18.360s
sys 0m2.888s
$ time for i in {1..100} ; do $PATCHED/bin/java Hello > /dev/null ; done
real 0m12.687s
user 0m16.784s
sys 0m2.560s
Proof-of-concept patch:
http://cr.openjdk.java.net/~redestad/scratch/module_package_names/
By moving this transformation into the VM we improve a number of startup metrics: fewer early JIT compilations triggered, first GC postponed, and a small improvement in wall clock time (as measured on 1 CPU, 8 cores, no active hyperthreads):
$ time for i in {1..100} ; do $BASELINE/bin/java Hello > /dev/null ; done
real 0m12.856s
user 0m18.360s
sys 0m2.888s
$ time for i in {1..100} ; do $PATCHED/bin/java Hello > /dev/null ; done
real 0m12.687s
user 0m16.784s
sys 0m2.560s
- backported by
-
JDK-8174441 Move package name transformations during module bootstrap into native code
-
- Resolved
-
- relates to
-
JDK-8172307 Remove ununsed JVM API JVM_GetModuleByPackageName()
-
- Resolved
-
-
JDK-8218581 Incorrect exception message generation
-
- Resolved
-