Someone reported a 2GB limit this compile. Cannot allocate more than 2GB. There is definitely no bug in the code, which carefully uses 64-bit arithmetics, and _aligned_malloc() which is supposed to be 64-bit according to MSDN. So, yet another compiler/libc bug, it seems
uci
id name Demolito 2018-10-29
id author lucasart
option name UCI_Chess960 type check default false
option name Hash type spin default 1 min 1 max 1048576
option name Threads type spin default 1 min 1 max 63
option name Contempt type spin default 10 min -100 max 100
option name Time Buffer type spin default 60 min 0 max 1000
uciok
setoption name Hash value 4096
ucinewgame
position startpos
go depth 20
info depth 1 score cp 48 time 1 nodes 21 pv e2e4
info depth 2 score cp 6 time 2 nodes 151 pv e2e4 g8f6
info depth 3 score cp 37 time 2 nodes 321 pv e2e4 e7e6 b1c3
info depth 4 score cp 8 time 4 nodes 643 pv b1c3 e7e6 e2e3 b8c6
info depth 5 score cp 37 time 5 nodes 1207 pv b1c3 b8c6 e2e3 e7e6 d2d4
info depth 6 score cp 35 time 7 nodes 2457 pv b1c3 e7e5 e2e4 f8e7 d1g4 g7g6
info depth 7 score cp 34 time 12 nodes 6581 pv b1c3 b8c6 d2d4 d7d5 g1f3 c8f5 c1f
4
info depth 8 score cp 28 time 19 nodes 12457 pv b1c3 b8c6 d2d4 d7d5 g1f3 c8f5 c1
f4 g8f6 f3e5
info depth 9 score cp 28 time 22 nodes 14833 pv b1c3 b8c6 d2d4 d7d5 g1f3 c8f5 c1
f4 g8f6 f3e5
info depth 10 score cp 26 time 39 nodes 30125 pv b1c3 b8c6 d2d4 d7d5 g1f3 g8f6 e
2e3 f6e4 c3e4 d5e4 f3d2 c8f5
info depth 11 score cp 16 time 93 nodes 85050 pv b1c3 d7d5 g1f3 e7e6 d2d4 g8f6 e
2e3 b8d7 f3e5 d7e5 d4e5
info depth 12 score cp 14 time 185 nodes 181013 pv e2e3 d7d5 d2d4 e7e6 b1d2 g8f6
f1d3 b8c6 g1f3 f8e7 e1g1 e8g8
info depth 13 score cp 31 time 454 nodes 484035 pv e2e4 e7e6 d2d4 b8c6 b1c3 g8f6
f1e2 d7d5 e4e5 f6e4 c3e4 d5e4 c2c3 f8e7
info depth 14 score cp 29 time 970 nodes 1067520 pv e2e4 e7e5 g1f3 b8c6 b1c3 g8f
6 f1b5 f8b4 e1g1 e8g8 d2d3 b4c3 b2c3 d7d6 b5c6 b7c6 a1b1
info depth 15 score cp 22 time 1626 nodes 1807735 pv e2e4 e7e5 b1c3 b8c6 g1f3 g8
f6 f1e2 d7d5 e4d5 f6d5 e1g1 f8e7 d2d4 e5d4 f3d4 e8g8 c1e3 d5c3
info depth 16 score cp 18 time 3108 nodes 3553064 pv e2e4 e7e5 g1f3 b8c6 b1c3 g8
f6 f1b5 c6d4 b5e2 d7d6 f3d4 e5d4 c3b5 c8d7 e1g1 a7a6 b5d4
info depth 17 score cp 20 time 6970 nodes 8082168 pv b1c3 d7d5 d2d4 g8f6 g1f3 b8
c6 e2e3 e7e6 f1d3 f8d6 c1d2 c8d7 e1g1 e8g8 e3e4 f6e4 c3e4 d5e4
info depth 18 score cp 19 time 8209 nodes 9514787 pv g1f3 d7d5 e2e3 b8c6 d2d4 g8
f6 c1d2 e7e6 f1d3 c8d7 e1g1 f8d6 c2c4 d5c4 d3c4 a7a6 c4e2 e8g8 b1c3 f6d5 a2a3 d6
e7
info depth 19 score cp 15 time 14625 nodes 17007249 pv g1f3 g8f6 d2d4 e7e6 c1g5
c7c5 b1c3 c5d4 f3d4 b8c6 e2e3 f8b4 d4c6 b7c6 f1e2 b4c3 b2c3 d8a5 g5f6 g7f6 e1g1
a5c3
info depth 20 score cp 21 time 23353 nodes 27211543 pv g1f3 d7d5 d2d4 g8f6 c1f4
e7e6 e2e3 b8c6 b1c3 f8b4 f3d2 e8g8 f1e2 a7a6 e1g1 c8d7 a2a3 b4d6 f4d6 c7d6
bestmove g1f3 ponder d7d5
ditto for the 64-old version.
Tested with a 32 GB hash without any issue as well, although I rarely have an occasion to use anything higher than 512 MB, which thanks to your suggestion has been approved for CCRL 40/40 tests.
CMCanavessi wrote: ↑Sat Nov 10, 2018 1:34 am
I can confirm that it crashes with 4gb hash size. Previous version doesn't crash, that's the value I use for my tournaments.
Carlos, does it still crash if you place the exec in a separate dir, alone with the accompanying cygwin1.dll?
CMCanavessi wrote: ↑Sat Nov 10, 2018 1:34 am
I can confirm that it crashes with 4gb hash size. Previous version doesn't crash, that's the value I use for my tournaments.
Carlos, does it still crash if you place the exec in a separate dir, alone with the accompanying cygwin1.dll?
Wait, you're trying your own binary (the one with cygwin), I was talking about the original ones posted by Lucas. Those don't work with 4gb hash and more.
Version=1
EventType=APPCRASH
EventTime=131863352980370896
ReportType=2
Consent=1
UploadTime=131863352980970897
ReportIdentifier=96ef0b71-e4f8-11e8-ac1d-002713cab278
IntegratorReportIdentifier=96ef0b70-e4f8-11e8-ac1d-002713cab278
Response.BucketId=982663855
Response.BucketTable=425075838
Response.type=4
Sig[0].Name=Application Name
Sig[0].Value=demolito_20181029_intel_old.exe
Sig[1].Name=Application Version
Sig[1].Value=0.0.0.0
Sig[2].Name=Application Timestamp
Sig[2].Value=5be18725
Sig[3].Name=Fault Module Name
Sig[3].Value=StackHash_6712
Sig[4].Name=Fault Module Version
Sig[4].Value=6.1.7601.24260
Sig[5].Name=Fault Module Timestamp
Sig[5].Value=5b9470be
Sig[6].Name=Exception Code
Sig[6].Value=c0000374
Sig[7].Name=Exception Offset
Sig[7].Value=00000000000bf302
DynamicSig[1].Name=OS Version
DynamicSig[1].Value=6.1.7601.2.1.0.256.48
DynamicSig[2].Name=Locale ID
DynamicSig[2].Value=1033
DynamicSig[22].Name=Additional Information 1
DynamicSig[22].Value=6712
DynamicSig[23].Name=Additional Information 2
DynamicSig[23].Value=6712be9e7276f2cb2425eb418dbe1c65
DynamicSig[24].Name=Additional Information 3
DynamicSig[24].Value=7632
DynamicSig[25].Name=Additional Information 4
DynamicSig[25].Value=763241c0719aaee0b5d82d384b9a8274
UI[2]=C:\Users\admin\AppData\Local\Temp\wzc7d8\demolito_20181029_intel_old.exe
UI[3]=demolito_20181029_intel_old.exe has stopped working
UI[4]=Windows can check online for a solution to the problem.
UI[5]=Check online for a solution and close the program
UI[6]=Check online for a solution later and close the program
UI[7]=Close the program
LoadedModule[0]=C:\Users\admin\AppData\Local\Temp\wzc7d8\demolito_20181029_intel_old.exe
LoadedModule[1]=C:\Windows\SYSTEM32\ntdll.dll
LoadedModule[2]=C:\Windows\system32\kernel32.dll
LoadedModule[3]=C:\Windows\system32\KERNELBASE.dll
LoadedModule[4]=C:\Windows\system32\msvcrt.dll
State[0].Key=Transport.DoneStage1
State[0].Value=1
State[1].Key=DataRequest
State[1].Value=Bucket=982663855/nBucketTable=425075838/nResponse=1/n
FriendlyEventName=Stopped working
ConsentKey=APPCRASH
AppName=demolito_20181029_intel_old.exe
AppPath=C:\Users\admin\AppData\Local\Temp\wzc7d8\demolito_20181029_intel_old.exe
Someone reported a 2GB limit this compile. Cannot allocate more than 2GB. There is definitely no bug in the code, which carefully uses 64-bit arithmetics, and _aligned_malloc() which is supposed to be 64-bit according to MSDN. So, yet another compiler/libc bug, it seems
uci
id name Demolito 2018-10-29
id author lucasart
option name UCI_Chess960 type check default false
option name Hash type spin default 1 min 1 max 1048576
option name Threads type spin default 1 min 1 max 63
option name Contempt type spin default 10 min -100 max 100
option name Time Buffer type spin default 60 min 0 max 1000
uciok
setoption name Hash value 4096
ucinewgame
position startpos
go depth 20
info depth 1 score cp 48 time 1 nodes 21 pv e2e4
info depth 2 score cp 6 time 2 nodes 151 pv e2e4 g8f6
info depth 3 score cp 37 time 2 nodes 321 pv e2e4 e7e6 b1c3
info depth 4 score cp 8 time 4 nodes 643 pv b1c3 e7e6 e2e3 b8c6
info depth 5 score cp 37 time 5 nodes 1207 pv b1c3 b8c6 e2e3 e7e6 d2d4
info depth 6 score cp 35 time 7 nodes 2457 pv b1c3 e7e5 e2e4 f8e7 d1g4 g7g6
info depth 7 score cp 34 time 12 nodes 6581 pv b1c3 b8c6 d2d4 d7d5 g1f3 c8f5 c1f
4
info depth 8 score cp 28 time 19 nodes 12457 pv b1c3 b8c6 d2d4 d7d5 g1f3 c8f5 c1
f4 g8f6 f3e5
info depth 9 score cp 28 time 22 nodes 14833 pv b1c3 b8c6 d2d4 d7d5 g1f3 c8f5 c1
f4 g8f6 f3e5
info depth 10 score cp 26 time 39 nodes 30125 pv b1c3 b8c6 d2d4 d7d5 g1f3 g8f6 e
2e3 f6e4 c3e4 d5e4 f3d2 c8f5
info depth 11 score cp 16 time 93 nodes 85050 pv b1c3 d7d5 g1f3 e7e6 d2d4 g8f6 e
2e3 b8d7 f3e5 d7e5 d4e5
info depth 12 score cp 14 time 185 nodes 181013 pv e2e3 d7d5 d2d4 e7e6 b1d2 g8f6
f1d3 b8c6 g1f3 f8e7 e1g1 e8g8
info depth 13 score cp 31 time 454 nodes 484035 pv e2e4 e7e6 d2d4 b8c6 b1c3 g8f6
f1e2 d7d5 e4e5 f6e4 c3e4 d5e4 c2c3 f8e7
info depth 14 score cp 29 time 970 nodes 1067520 pv e2e4 e7e5 g1f3 b8c6 b1c3 g8f
6 f1b5 f8b4 e1g1 e8g8 d2d3 b4c3 b2c3 d7d6 b5c6 b7c6 a1b1
info depth 15 score cp 22 time 1626 nodes 1807735 pv e2e4 e7e5 b1c3 b8c6 g1f3 g8
f6 f1e2 d7d5 e4d5 f6d5 e1g1 f8e7 d2d4 e5d4 f3d4 e8g8 c1e3 d5c3
info depth 16 score cp 18 time 3108 nodes 3553064 pv e2e4 e7e5 g1f3 b8c6 b1c3 g8
f6 f1b5 c6d4 b5e2 d7d6 f3d4 e5d4 c3b5 c8d7 e1g1 a7a6 b5d4
info depth 17 score cp 20 time 6970 nodes 8082168 pv b1c3 d7d5 d2d4 g8f6 g1f3 b8
c6 e2e3 e7e6 f1d3 f8d6 c1d2 c8d7 e1g1 e8g8 e3e4 f6e4 c3e4 d5e4
info depth 18 score cp 19 time 8209 nodes 9514787 pv g1f3 d7d5 e2e3 b8c6 d2d4 g8
f6 c1d2 e7e6 f1d3 c8d7 e1g1 f8d6 c2c4 d5c4 d3c4 a7a6 c4e2 e8g8 b1c3 f6d5 a2a3 d6
e7
info depth 19 score cp 15 time 14625 nodes 17007249 pv g1f3 g8f6 d2d4 e7e6 c1g5
c7c5 b1c3 c5d4 f3d4 b8c6 e2e3 f8b4 d4c6 b7c6 f1e2 b4c3 b2c3 d8a5 g5f6 g7f6 e1g1
a5c3
info depth 20 score cp 21 time 23353 nodes 27211543 pv g1f3 d7d5 d2d4 g8f6 c1f4
e7e6 e2e3 b8c6 b1c3 f8b4 f3d2 e8g8 f1e2 a7a6 e1g1 c8d7 a2a3 b4d6 f4d6 c7d6
bestmove g1f3 ponder d7d5
ditto for the 64-old version.
Tested with a 32 GB hash without any issue as well, although I rarely have an occasion to use anything higher than 512 MB, which thanks to your suggestion has been approved for CCRL 40/40 tests.