From: Donkey Hottie on

Hey.

I have never earlier tested gcj as I thought it was obsolete in its Java
language support.

But now I tested it with one of my apps, and here is the result.

The application is a command line app, which processes files as input,
and produces one file as output. No GUI.

I did not compile from source, but passed the already compiled (with Sun
javac) jar-file. Compiled fine, and resulted as a Linux-executable.

The gcj-compiled version runs fine, and produces the output file fine,
no errors.

But the gcj-compiled version is SLOW.

Sun JRE 6:
real 0m33.512s
user 0m28.450s
sys 0m1.472s

GCJ-compiled
real 1m46.161s
user 1m32.082s
sys 0m2.468s

The java command gets option -Xmx256m, but the gcj-compiled did not get
any Java-specific options.

Is it possible to pass that heap instruction to the gcj-compiled
version? Does it help?

Or is gcj really THAT bad? If it is, I wonder why they bother with gcj
any more.


--
You will be singled out for promotion in your work.
From: Arne Vajhøj on
On 26-03-2010 17:18, Donkey Hottie wrote:
> I have never earlier tested gcj as I thought it was obsolete in its Java
> language support.
>
> But now I tested it with one of my apps, and here is the result.
>
> The application is a command line app, which processes files as input,
> and produces one file as output. No GUI.
>
> I did not compile from source, but passed the already compiled (with Sun
> javac) jar-file. Compiled fine, and resulted as a Linux-executable.
>
> The gcj-compiled version runs fine, and produces the output file fine,
> no errors.
>
> But the gcj-compiled version is SLOW.
>
> Sun JRE 6:
> real 0m33.512s
> user 0m28.450s
> sys 0m1.472s
>
> GCJ-compiled
> real 1m46.161s
> user 1m32.082s
> sys 0m2.468s
>
> The java command gets option -Xmx256m, but the gcj-compiled did not get
> any Java-specific options.
>
> Is it possible to pass that heap instruction to the gcj-compiled
> version? Does it help?

My test results were even worse for GCJ, but that was with 3.4.4.

Did you use -O3 ?

> Or is gcj really THAT bad? If it is, I wonder why they bother with gcj
> any more.

They apparently want a Java compiler in the collection.

Arne

From: Donkey Hottie on
On 26.3.2010 23:57, Arne Vajh�j wrote:
>
> Did you use -O3 ?
>

-fno-bounds-check -O3 -ffast-math -march=native


--
The holy passion of Friendship is of so sweet and steady and loyal and
enduring a nature that it will last through a whole lifetime, if not
asked to
lend money.
-- Mark Twain, "Pudd'nhead Wilson's Calendar"
From: Arne Vajhøj on
On 26-03-2010 18:05, Donkey Hottie wrote:
> On 26.3.2010 23:57, Arne Vajh�j wrote:
>> Did you use -O3 ?
>
> -fno-bounds-check -O3 -ffast-math -march=native

I think you have done what you could.

Performance is not a reason to pick GCJ.

BTW, I don't know of any reason.

Arne


From: Roedy Green on
On Fri, 26 Mar 2010 23:18:57 +0200, Donkey Hottie <donkey(a)fred.pp.fi>
wrote, quoted or indirectly quoted someone who said :

>Or is gcj really THAT bad? If it is, I wonder why they bother with gcj
>any more.

You can use Jet. see http://mindprod.com/jgloss/jet.html

Sun is getting so good with Hotspot the Jet marketing people are
shifting from them speed advantage to obfuscation advantage.
--
Roedy Green Canadian Mind Products
http://mindprod.com

If you tell a computer the same fact in more than one place, unless you have an automated mechanism to ensure they stay in sync, the versions of the fact will eventually get out of sync.