[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [computer-go] Score estimating
One of the first Java projects I did was translating Goliath from C to Java.
Just a simple straightforward translation. This was about the time the first
JITs came around, and the Java program was about two times slower than the
same C program. Ten times slower with an ordinary interpreter. I thought
this was not bad, as I must have spent a man-year or two just on
optimization specially tailored for C. When the more sophisticated JITs came
out a few months later, the difference decreased to a factor 1.5 (still in
favour of C).
I don't know what the situation is at the moment, but my guess is it's
probably still about 1.5 times in favour of C++. C++ compilers and
optimizers improved too. (Or is it because the Pentium chips have been
optimized to run programs developed in C++?) Occasionally rumours go that
Java matches the speed of C++ or even exceeds it, but this never makes it
past the rumour stage.
In terms of productivity, my experience is that in Java I'm about twice as
productive as in C++. This is due to a combination of things. Simpler
language (means I don't get into trouble as much and I stopped worrying what
the dot operator was doing today) and better libraries. But most important:
no more worries about bad pointers, memory leaks, buffer overruns and more
such hairy problems.
The productivity gain is important. With the time I gain in development in
Java I can easily make up for the speed difference to C++ by using the extra
time to do optimization on performance.
-----Original Message-----
From: computer-go-bounces@xxxxxxxxxxxxxxxxx
[mailto:computer-go-bounces@xxxxxxxxxxxxxxxxx]On Behalf Of David Fotland
Sent: Sunday, August 08, 2004 19:58
To: 'computer-go'; drd@xxxxxxxxxxxxxxxxx
Subject: RE: [computer-go] Score estimating
Do you have a reference for your 30% higher productivity number? I'm
surprised
that there is that much difference in productivity among any high level
language.
David
> -----Original Message-----
> From: computer-go-bounces@xxxxxxxxxxxxxxxxx
> [mailto:computer-go-bounces@xxxxxxxxxxxxxxxxx] On Behalf Of Weimin Xiao
> Sent: Sunday, August 08, 2004 7:12 AM
> To: drd@xxxxxxxxxxxxxxxxx; computer-go
> Subject: Re: [computer-go] Score estimating
>
>
> >From my experience, Java is about 30% slower than C++ running in
> >byte-code
> mode. However, if compiled Java program into native
> executables (not the simple exe wrapper), the gap is only at
> about 10%. Comparing the computer speed increase is much more
> than 10% in half year, and programming efficiency using Java
> is at least 30% higher than C++, write GO program in Java is
> a better choise than in C++.
>
> Weimin
>
> ----- Original Message -----
> From: "Don Dailey" <drd@xxxxxxxxxxxxxxxxx>
> To: <computer-go@xxxxxxxxxxxxxxxxx>
> Cc: <computer-go@xxxxxxxxxxxxxxxxx>
> Sent: Sunday, August 08, 2004 7:41 AM
> Subject: Re: [computer-go] Score estimating
>
>
>
> Chrilly,
>
> I'm no expert on this but I think speed is always
> critical in any game. Speed and memory are to computers
> what intelligence is to man. .. I think what you are seeing
> with Java is not that it is suited to go programming, it's
> just very popular. It's not particularly expressive OR fast,
> but it's a good compromise in both directions. ..
>
> - Don
> _______________________________________________
> computer-go mailing list
> computer-go@xxxxxxxxxxxxxxxxx
> http://www.computer-go.org/mailman/listinfo/computer-go/
>
_______________________________________________
computer-go mailing list
computer-go@xxxxxxxxxxxxxxxxx
http://www.computer-go.org/mailman/listinfo/computer-go/
_______________________________________________
computer-go mailing list
computer-go@xxxxxxxxxxxxxxxxx
http://www.computer-go.org/mailman/listinfo/computer-go/