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

[computer-go] Tromp connect4



I see why Tromp connect4 there is so much worries with hashtable. As you
said yourself it uses an exact hash, not a Zobrist. So there is no good
division over the hashtable. Zobrist with a good overwrite strategy fixes
that problem instantly. Also remove the second hashtable then and make it 1
big hashtable which is sequential scanning (it doesn't even matter whether
that's forwards or backwards).

Then you're 10 million nps with this program at your XP in C.

I can advice you to also code better C code. Your 'if then else' are too
tricky for compilers.

At 18:21 9-11-2004 +0100, John Tromp wrote:
>Vincent Diepeveen wrote:
>
>> MP2600 (2.127Ghz) 256KB cache. I might have crippled something modifying
>> hashtable size and putting an AND there and doing x++, but the speedup is
>> clearly showing.
>
>Vincent, this is total b*llsh*t. Just look at the effects of your change:
>
>334588191 positions searched instead of
>   7321073,
>
>and a hashtable utilization of
>
>0.004 instead of
>0.697
>
>Even with your "speedup" it has taken you 15 times longer to compute
>the same result!
>
>I already explained that I use the % prime to get an excellent distribution
>for my hashtable and you botch it up with your % 2-power.
>Stop your nonsense and report back when you have a real speedup...
>
>> I see now it can get speeded up a lot more by allocating 1 table instead
of 2.
>> But well there is another 100 optimizations and they call cost time.
>> It's 5.3 million nps already now.
>> 
>> Using 1048583 transposition table entries with 8 probes.
>> Solving 9-ply position after 444333377 . . .
>> score = -2 (-)  work = 27
>> 334588191 pos / 62001 msec = 5396.5 Kpos/sec
>> store rate = 0.004
>> - 0.280  < 0.198  = 0.052  > 0.196  + 0.274
>>  909721   23904   15676   15340   16963   16064   13475   11108
>>    7950    6128    4126    2933    1882    1196     846     473
>>     345     164     126      68      30      30      14      10
>>        2       6       0       3       0       0       0       0
>
>here was the original result:
>
>Using 1050011 transposition table entries with 8 probes.
>Solving 9-ply position after 444333377 . . .
>score = -2 (-)  work = 22
>7321073 pos / 4226 msec = 1732.4 Kpos/sec
>store rate = 0.697
>
>-John
>_______________________________________________
>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/