Startup Improvement with -Xverify:none
Mandy Chung
Mandy.Chung at Sun.COM
Mon Jul 13 16:35:50 PDT 2009
Mark,
I did some experiments in running the startup benchmarks with
-Xverify:none to get a closer approximation of the potential gain if the
module system supports pre-verification.
http://cr.openjdk.java.net/~mchung/startup_measurement/startup.result.b63.noverify
Summary (based on the measurement with the refworkload benchmarks)
=======
1) Pre-verification could improve startup time by 8-13%.
2) Class data sharing improves the startup time by 4.5-18.5%, half of
the time is class parsing time. Class parsing could be one candidate to
look for optimization opportunity. Need further brainstorming.
3) Looking up application classes takes about 2.27-7.0%. With module
system, class lookup should speed up since the module system knows which
module a class belongs to. Need to measure this when it's ready.
4) The data archive (JRE/bin/client/classes.jsa) is generated at JRE
install time with a predefined classlist. With modularized JDK, we need
to make sure either the class data sharing technique to work with JDK
modules (e.g. regenerate the classes.jsa when new JDK module is
installed), or other optimization in place that the startup time
improvement due to class data sharing would still be observed.
FYI. The changeset for my HotSpot instrumentation is already in
hotspot-rt [1].
Mandy
[1] http://hg.openjdk.java.net/jdk7/hotspot-rt/hotspot/rev/6a93908f268f
More information about the jigsaw-dev
mailing list