At EclipseCon 2015, Zero Turnaround (creators of JRebel, the popular tool that eliminates redeploys in Java) released Optimizer for Eclipse which is a self-guided user interface for adjusting JVM settings to improve performance. When installed from the Eclipse Marketplace, a guided set of steps ask the user whether to adjust memory settings and other performance flags into the JVM startup arguments, which provide a boost to the launch of the application.
At startup, eclipse loads many classes and by default will run the JVM bytecode verifier, which can add additional start-up time. By adding the -Xverify:none
to the JVM arguments, the bytecode verifier is disabled which decreases the start-up time.
In addition, if the computer is multi-core the -server
and -XX:+UseParallelGC
flags are added, which can create faster code by performing JIT in advance, and using the parallel garbage collection can increase memory performance of the application.
Finally, if the JVM and computer supports it, the memory settings (in particular, the initial heap size and the max heap size) are increased, along with the +XX:PermSize
(which is valid for Java 7 and below).
After restart, the Eclipse instance shows a welcome screen which indicates how much faster Eclipse is starting up with the new settings:
The optimizer can also be used to tidy up some of the metadata and logs (similar to clearing history in a browser) which can speed up Eclipse. Each option is incorporated in the menu so these changes can be selectively applied.
Under the covers, the changes are applied to the eclipse.ini
file, which can subsequently be reverted if necessary.
A video demo showing the tool in use is available.