Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Java versus C Speed Comparison

Author: Robert Hyatt

Date: 14:26:52 01/10/03

Go up one level in this thread


On January 10, 2003 at 15:58:29, Miguel A. Ballicora wrote:

>On January 10, 2003 at 15:06:58, Robert Hyatt wrote:
>
>>On January 10, 2003 at 12:37:20, Miguel A. Ballicora wrote:
>>
>>>On January 10, 2003 at 11:10:07, Robert Hyatt wrote:
>>>
>>>>On January 10, 2003 at 05:12:04, David Rasmussen wrote:
>>>>
>>>>>On January 09, 2003 at 17:36:11, Robert Hyatt wrote:
>>>>>
>>>>>>I think the entire concept of "short", "int" and "long" are badly flawed.  It
>>>>>>would
>>>>>>have been so much more logical and clean to simply go with int16, int32 and
>>>>>>int64.
>>>>>>
>>>>>>I don't personally like "long long" as it is a syntactical oddity in light of
>>>>>>char, short, int
>>>>>>and float/double.
>>>>>
>>>>>There is a reasonable explanation for this at least. The idea is that "int"
>>>>>should be whatever is the most natural entity of integer calculalation on a
>>>>>machine. In many cases, you don't care how many bits a type can store. The lower
>>>>>limits given by the standards is enough. You just want to know that by writing
>>>>>"int" you get something that on every platform is supposed to be simple, fast,
>>>>>signed (no weird problems with subtraction etc.),
>>>>
>>>>But _not_ for "real codes".  Do I _really_ want to use int, when it _might_ be a
>>>>16 bit value that won't hold the counter I need?
>>>>
>>>>No.
>>>
>>>You can use long, as you say below, if you really need bigger values than the
>>>ones provided by 16 bits. I do not think this is a big deal.
>>>
>>>Miguel
>>
>>
>>That's the point.  On a Cray, I want to use "int" and get 32 bits, vs using long
>>and getting
>
>Just use int :-)

Won't work.

I need a 32 bit counter.  I need a 64 bit bitboard.  I need a 16 bit index.

What works on the Cray will fail on the PC, because "long" works for the
Cray/Alpha but not for the PC if I want a 64 bit integer...


>
>If you have int16, int32, int64, you never know which one is more suitable for
>another processor. Suppose that int16 is enough and you use it, maybe int32 was
>faster!

However, IO do know which is most suitable for _my_ application.  If I need 64,
I
want 64, not whatever the compiler says is "best"...




>
>Of course you have to make a decision if you want portable code or faster code.
>You can always use a typedef for a particular variable and have the best
>compromise in C.
>You cannot have 100% portable and optimal code in any scheme, even in the one
>you suggest.
>
>Miguel
>
>
>
>
>>64.  I _know_ the precision I need, I'd prefer to be able to specify it
>>_precisely_ rather than
>>letting the compiler assume something.



This page took 0.02 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.