Author: Poschmann
Date: 09:11:38 01/04/00
Go up one level in this thread
On January 04, 2000 at 09:24:13, Robert Hyatt wrote:
>On January 04, 2000 at 06:20:52, Poschmann wrote:
>
>>On January 03, 2000 at 14:58:04, Bruce Moreland wrote:
>>
>>>On January 03, 2000 at 13:03:46, Bango wrote:
>>>
>>>>However; to us technophobes, it seems reasonable that a 64 bit bus can send
>>>>double the information as well a 64 bit CPU can calculate twice as fast. For
>>>>example look at the SEGA games which run on 64 bit systems, the graphics are
>>>>amazing, much nicer than a home computer.
>>>>
>>>>IMHO if a computer software program runs better on 32 bits than 16 bits it seems
>>>>reasonable that 64 bits will increase speed and quality even more.
>>>
>>>If you are trying to get drunk, you may be able to do it more quickly if the
>>>opening in the top of the beer bottle is larger. But beyond a certain point it
>>>does not matter how much larger the opening is, since the mouth of everyone
>>>except Mick Jagger is of finite and typical size. If you put a pint of beer in
>>>a salad bowl you can't drink it any faster than if you put it in a five gallon
>>>bucket.
>>>
>>>I am not a graphics programmer, but I think that the reason that the graphics
>>>app work better with a wider word size is that those things want to do a lot of
>>>calculations on wide words, and want to move a tremendous amount of data around
>>>as fast as possible.
>>>
>>>Chess programs don't benefit as much from the wide bus.
>>>
>>>bruce
>>
>>In image or graphic processing you must do many operations with each pixel in
>>the same way. If you have a 64-Bit-processor you can load, calculate and store 8
>>8-Bit-pixels at once. For example you can use MMX instructions in the Pentium
>>processor.
>>
>>I dont know, if there is a possibility to do chess calculations in the same way
>>in parallel. I suspect it is difficult or impossible because many operations
>>depend on if/then/else conditions before.
>>
>>Ralf
>
>
>Many things can be done 'in parallel'. Is there a pawn on this square, AND a
>pawn on that square, AND a pawn on that other square? Etc...
Can you explain your example ? If I have to realize your example I could do it
in the following two ways:
//1.
if(pos(pawn1)==this_square){
if(pos(pawn2)==that_square)
action11;
else
action12;
}
else{
if(pos(pawn2)==that_square)
action21;
else
action22;
}
//2.
idx=(BitBoard_Position_of_Pawns&Mask_Pawn12)<<Some_Bits;
switch(idx)
{
case 0: action22;
break;
case 1: action21;
break;
case 8: action12;
break;
case 9: action11;
break;
}
In both cases the program not realy benefit from a larger integer word. Because
the decision-tree is sequential as before. Am I wrong ?
In the second case you can exchange the switch statement for a lookup table
access. But the number of table entries is limited by the available memory.
This page took 0 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.