Eclipse(RadRails, RTD) Tuning

1) Dla dociekliwych - polecam ponizsza lekture.

Putting RadRails on JRockit

Memory tuning for Exadel Studio Pro and Eclipse 3.1

Tuning Eclipse Performance and Avoiding OutOfMemoryExceptions

dodatkowo:

MaxPermSize and how it relates to the overall heap

Tuning Garbage Collection with the 5.0 Java[tm] Virtual Machine

2) Dla niecierpliwych

i. jre - 1.5 vel 5.0 (przynajmniej 30% szybsza od 1.4)
zachecam rowniez do poeksperymentowania z JRockit albo 1.6 (beta)

UWAGA
nalezy sprawdzic kt. jvm uzywa eclipse [Help -> About Eclipse SDK -> Configuration Details]
przykladowy fragment (sciezka i parametry startowe)

-vm
c:\Lang\Java\jdk1.5.0_06\bin\javaw.exe
eclipse.product=org.eclipse.sdk.ide
eclipse.startTime=1138681185312
eclipse.vm=c:\Lang\Java\jdk1.5.0_06\bin\javaw.exe
eclipse.vmargs=-Xms256m
-Xmx256m
-XX:PermSize=128m
-XX:MaxPermSize=128m
-Dcom.sun.management.jmxremote

ii. w pliku eclipse.ini wpisac (system z 512mb ramu)

-vmargs -Xms256m -Xmx256m -XX:PermSize=64m -XX:MaxPermSize=64m

lub (system z 1024mb ramu)

-vmargs -Xms512m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=128m

iii. Uruchomic eclipse. W przypadku gdy nie ma to byc systemowa jvm (patrz UWAGA) nalezy podac sciezke:
Przykladowo dla windows (plik .bat lub .lnk)
eclipse.exe -vm “c:\Lang\Java\jre1.6.0\bin\javaw.exe”

iv. Krotkie wyjasnienie:
Uzylismy szybszej maszyny virtualnej oraz zafiksowali rozmiar sterty (heap size) na stala wartosc (Xms i Xmx) co mozna w przyblizeniu porownac do zafiksowania w Windows rozmiaru pliku wymiany (dynamiczne alokowanie pamieci pod sterte ma swoj koszt). Parametry PermSize i MaxPermSize okreslaja rozmiar tzw. Permanent Generation i maja m.in. wplyw na optymalizacje dzialania odsmiecacza pamieci (gc). Zainteresowanych odsylam do lektury linkow.

v. Do testowania konfiguracji przydac sie moze jconsole (JAVA_HOME\bin\jconsole.exe)
Nalezy dopisac do eclipse.ini-Dcom.sun.management.jmxremote
uruchomic eclipse i jconsole oraz podlaczyc jconsole do eclipse

Prosze nie przesadzac z wartosciami aby zostalo cos dla systemu i innych aplikacji :slight_smile: