load time : Java Glossary
©1996-2017 2008-04-05 Roedy Green of Canadian Mind Products
- load time
java.exe takes quite a long time to start up. It loads
DLL (Dynamic Link Library) s, then it loads your classes one by one in class file
format and compiles and optimises them to machine code. What can be done to speed
- The most dramatic savings is by using Jet, particularly the new beta which doubles the speed yet again,
which does static native compilation. It does the preparation of the highly
optimised machine code well in advance and only loads the minimum number of
classes you need.
- Use java.exe -client rather
than java.exe -server.
-client favours fast start up over fast execution.
- If you are using an old Java, upgrade to Java version 1.6
which is faster at loading.
- Sun is not much interested in fast load. They are mostly concerned with server
side where a program loads then runs for weeks or months at a time. They make their
money selling premium server hardware. Even if it took 10 minutes for a server
program to fire up, it would not matter. You need to put pressure on Sun to take an
interest in speeding up program load for desktop utilities.
- I have proposed two projects to speed load, but both require modifying the
JVM (Java Virtual Machine). See Gespenster fast program load and Hibernation (Suspended
Animation) Fast Program Load. You might try implementing them as a prototype and
convincing Sun to incorporate your proven idea. Java is open source.
- Use psychological techniques. Keep your user entertained with an interesting,
varying display while the program loads. If the program looks frantically busy, the
user is much less likely to be frustrated by the delay. You might write a little
kicker program in C that launches your Java program
then sets about in parallel displaying flash screens, perhaps enhanced with
variable web content, to keep the user amused.