This is the mail archive of the
java@gcc.gnu.org
mailing list for the Java project.
Garbage collection problem
- From: Adam King <aking at dreammechanics dot com>
- To: java at gcc dot gnu dot org
- Date: Tue, 20 Aug 2002 13:40:17 -0400
- Subject: Garbage collection problem
Hi All:
I'm having issues with the garbage collection when running on a low
memory machine ( 64Mb ). First, some benchmarks showing our program
running under: JDK1.3.1, current cvs gcj 3.1.1 and gcj 3.1.1 with
'GC_no_win32_dlls = TRUE;' set in the gc.
Here's the results - all times are in seconds :
System 1: Win2k SP2, 256Mb, P4 1.4Ghz
Startup Login Logout
JDK1.3.1 9 19 2
gcj+gc mod 5 18 1
gcj 3.1.1 18 44 15
System 2: WinME, 64Mb, AMD Duron 700Mhz
Startup Login Logout
JDK1.3.1 32 71 17
gcj+gc mod 21 125 55
gcj 3.1.1 36 302 126
Startup: time it took from starting the executable to the main menu
Login: time from pressing the 'Start' button to fully logged in 3D world
Logout: time from pressing 'Quit' button to being back at the main menu
I was very glad to see that when memory is avialble, the modified gcj
beat Sun's JDK in all of our performance tests. Is there _anything_ I can
do to improve the performace on "low" (64Mb) memory systems?
I _really_ need to ship using the exe version of the client instead of
bundling in the JRE.
Also, is there any danger to setting 'GC_no_win32_dlls' to true?
Here's the options I'm using to compile:
i686-pc-mingw32-gcj \
-finline-functions -fno-bounds-check -fno-store-check \
-funroll-loops -fexpensive-optimizations \
-static --static \
-mcpu=pentium -fomit-frame-pointer \
--main=muse.client.gcjMain -o /tmp/saMuse.exe \
Are there any other flags I can add to squeeze out any more performance?
Thanks for any help!
Adam
P.S. I'll be able to add a 'Done with GCJ' description in 2 weeks after
our program begins being promoted as a free download for a TV show.