Thursday, February 22, 2007

Great OpenSource RCP application and Plug-in

Eclipse open source RCP application page:
http://www.eclipse.org/community/rcpos.php

PSICAT:
http://portal.chronos.org/psicat-site/index.html

Eclipse Trader:
http://eclipsetrader.sourceforge.net/

RSSOwl:
http://www.rssowl.org/

JLibrary:
http://jlibrary.sourceforge.net/

ZDT:
http://zdt.sourceforge.net/

ZipTie:
http://www.ziptie.org/

Friday, February 09, 2007

Download IBM JDK for PPC 32bit for pSeries

32 bit for PPC pSeries with SDK 1.5 support

Compile Eclipse with JDK1.6

From http://jroller.com/page/andyl?entry=eclipse_and_1_6_jdk

Eclipse and 1.6 JDK: improving startup performance
Finally 1.6 JDK is out, so we could play with it :o)

One of promises for new JDK was, that java code should load and run faster by JVM if it is compiled with new 1.6 target. The largest Java application I have is Eclipse, so I've decided to recompile it with 1.6 target to see the difference.

Here are the steps how you could compile your own Eclipse (using latest stable release) with 1.6 target:

1. Read srcIncludedBuildInstructions.html

DO NOT FOLLOW *all* the steps in this file, read below the changed instructions:
2. Get Ant 1.6.1, install it, set ANT_HOME environment variable to the root of your Ant installation, add ANT_HOME/bin to the PATH variable.
3. Get JDK 1.6, install it, set JAVA_HOME environment variable to the root of your 1.6 JDK installation, add JAVA_HOME/bin to the PATH variable.
4. Get Eclipse eclipse-sourceBuild-srcIncluded-3.2.1.zip from R-3.2.1-200609210945/index.php, here is direct link: eclipse-sourceBuild-srcIncluded-3.2.1.zip
5. unpack the eclipse-sourceBuild-srcIncluded-3.2.1.zip
6. cd to the directory
7. change build.xml in the root of this directory: search for 'javacSource' and 'javacTarget' properties and replace values to '1.6'
8. Execute build -os -ws -arch -java5home

In my case it was: build -os win32 -ws win32 -arch x86 -java5home F:\java\jdk1.6.0
9. after ~20 minutes (depends on your mashine) you will see a zip file in the "result" directory. That is you new Eclipse, compiled with and for 1.6 JDK.
10. Install the zip in your preferred way.

So what is about numbers ?

Start your eclipse with "java -jar startup.jar -debug" command line from the console and check the output, you should see something like this:

Time to load bundles: 16
Starting application: 1594
Application Started: 8453

It is of course not a real benchmark, but something we want: it is startup time for workbench, so it should give us some feeling how fast/slow Eclipse startup is.

So I've compared "default" Eclipse startup with 1.5 / 1.6 and "new" Eclipse startup with 1.6, all with the same workspace/configuration (my PC is a dual core AMD 64 at 2000 MHz with 2GB RAM).

Here are the average numbers for "Application Started" output (each configuration started 11 times, so that the file cache should work and only "bytecode" load time must affect the results):
time (ms) 1.5 on 1.5 1.5 on 1.6
1.5 on 1.5 8766
1.5 on 1.6 7664 - 12,57%
1.6 7516 - 14,26% - 1,93%

Conclusion:

-do not recompile Eclipse with 1.6 target! Too much time/efforts for only 2% speedup (at least on my PC).

-switch to new 1.6 JDK! (either install it as default or use -vm argument to start Eclipse on top of 1.6 JDK). The new JDK seems to have really improved JVM performance even without using all the new bytecode features introduced in 1.6.

Marry Christmas and happy new year!
:o)