Done with Gcj? Send us a link or a story!

Matt Welsh mdw@cs.berkeley.edu
Tue Jun 27 22:18:00 GMT 2000


Alexandre Petit-Bianco <apbianco@cygnus.com> writes:
> The Gcj toolchain is being used in really cool projects. I just added
> a `Done with GCJ' section to the Java web pages so we can reference
> the ones that wish to be listed on our web site:
> 
>   http://sourceware.cygnus.com/java/done.html

Yeah - I'm done with GCJ - it's too unstable for me to use with complex 
multithreaded applications.

Although I suspect this was not the meaning you had intended :-)

Seriously, though - you can reference the following project:

	http://www.cs.berkeley.edu/~mdw/proj/jaguar

which builds in a high-performance I/O and networking facility into Java.
Two back-end compilers are supported: GCJ and OpenJIT (which is a JIT that 
runs with standard JVMs).

Back to my original point, though -- I have not used GCJ for some time
because I ran into many problems trying to run anything more complex than
toy applications on top. It's not as though I gave up at the first sign 
of trouble -- I spent nearly 6 months banging on it, chasing down bugs, 
and digging into all aspects of both the compiler and runtime. 

Many of my problems stemmed from wanting to use more advanced features
(such as dynamic class loading) which were unsupported by the older snapshots.
Multithreaded applications gave me a lot of trouble, too - causing mysterious 
crashes which I could not attribute to my own code. Trying to trace these 
things down in gdb yielded perplexing results.

I spent a LOT of time trying to nail down a stable version of the compiler
and runtime that had the features I wanted *without* all of the bugs. 
The multiplicity of versions, patches, and incompatibilities were quite
a nightmare to untangle. Why is GCJ still relying upon separate patches
(from folks like Bryce) to keep the new runtime working with the old
compilers? It's really a mess.

I don't mean to sound harsh, but in the end it has been very frustrating
to make progress with gcj. If people are having better success with the
system lately, I'd love to hear about it, and may consider going back and
trying again. From what I can tell listening to the mailing list and looking
at the web pages, it doesn't look like gcj is any closer to a stable,
full-featured release than it was a few months ago.

This is a real shame because I feel that gcj could make a big impact on
high-performance, open-source Java implementations. With all of the
work on Java performance going into closed source systems (HotSpot, IBM's
compilers, etc.) it's even more important that the academic and research
community have access to an open, stable, high-performance Java environment.
GCJ is a great system and the design is quite elegant. I'd love to be 
able to use it!

Any comments?

Matt Welsh



More information about the Java mailing list