[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [computer-go] Score estimating



You made me curious, so I had a quick look at Ruby. Indeed at first glance
it seems a powerful language that will enable to build applications quickly.

However it's not immediately clear to me what features of it will improve
productivity in a large-scale project, as in a Go playing program for
example. There are some obvious things I noticed that will pose a
considerable minus. As a scripting language it's probably going to be very
slow. More importantly, the language seems designed for fast development,
not for 'clarity'.

-----Original Message-----
From: computer-go-bounces@xxxxxxxxxxxxxxxxx
[mailto:computer-go-bounces@xxxxxxxxxxxxxxxxx]On Behalf Of Peter McKenzie
Sent: Monday, August 09, 2004 0:44
To: computer-go@xxxxxxxxxxxxxxxxx
Subject: RE: [computer-go] Score estimating



Mark, your numbers agree with my gut feel on this issue.  To summarise:

- when working with Java I'm about twice as productive as when working with
C++
- optimised C/C++ code is about 1.5-2 times as fast as equivalent Java code

These conclusions are based on the following experience:
- 4 years commercial experience with Java
- 5 years commercial experience with C/C++
- 10+ years experience developing a competitive tournament chess program in
my spare time
- discussions with chess programmers who have developed programs in Java
- development of an atari-Go program using Java

btw, if you want a mindblowing productivity boost then try Ruby!

cheers,
Peter

From: "Mark Boon" <tesuji@xxxxxxxxxxxxxxxxx>
>Reply-To: computer-go <computer-go@xxxxxxxxxxxxxxxxx>
>To: "computer-go" <computer-go@xxxxxxxxxxxxxxxxx>
>Subject: RE: [computer-go] Score estimating
>Date: Sun, 8 Aug 2004 23:20:05 +0200
>
>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/

_________________________________________________________________
Need more speed? Get Xtra JetStream  @ http://xtra.co.nz/jetstream

_______________________________________________
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/