Author: Uri Blass
Date: 08:05:28 11/04/02
Go up one level in this thread
On November 04, 2002 at 05:58:37, Severi Salminen wrote: >>I did not try it at this moment but I guess that the problem is that the order >>of the xor is different in debug and in release mode. >> >>I am going to try it later today. > >Good, you got it also :) See my other post... Ok now I have another problem because I hace a crush after more than 4,000,000 nodes With __int64 rand64() { return rand()^((__int64)rand()<<15)^((__int64)rand()<<30)^ ((__int64)rand()<<45)^((__int64)rand()<<60); } I had no crush and the program could even get depth 12 in the opening position I decided to replace it by __int64 rand64() { int a,b,c,d,e; a=rand(); b=rand()<<15; c=rand()<<30; d=rand()<<45; e=rand()<<60; return a^((__int64)b)^((__int64)c)^ ((__int64)d)^((__int64)e); } The result is that more numbers are the same between debug and release mode but I get a crush instruction at 0x00406bf5 reference memory at 0x01f0dd1c The memory could not be written. The number of nodes are the same except the last number Both release mode and debug mode print 2940197 at depth 10 The release mode prints 4222285 and crush some minutes later. The debug mode has a different behaviour and it seems to go to infinite loop after 2940197 and does not respond to my commands. Uri
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.