Crafty-23.1 crash

Discussion of anything and everything relating to chess playing software and machines.

Moderator: Ras

User avatar
Graham Banks
Posts: 44591
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

Re: Crafty-23.1 crash

Post by Graham Banks »

My rc file:

smpnice=1
egtb
tbpath=d:\Tablebases
hash=96M
hashp=64M
cache=32M
ponder off
learn 0
book off
log=off
exit
gbanksnz at gmail.com
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Crafty-23.1 crash

Post by bob »

I noticed it said "processor is _not_ Intel" which would only leave AMD I assume. not a K7???

Bob
User avatar
Graham Banks
Posts: 44591
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

Re: Crafty-23.1 crash

Post by Graham Banks »

bob wrote:I noticed it said "processor is _not_ Intel" which would only leave AMD I assume. not a K7???

Bob
AMD Athlon MP2200+

Cheers,
Graham.
gbanksnz at gmail.com
zullil
Posts: 6442
Joined: Tue Jan 09, 2007 12:31 am
Location: PA USA
Full name: Louis Zulli

Re: Crafty-23.1 crash

Post by zullil »

bob wrote: Here's an idea, if you feel like it. At the top of SearchRoot() (in search.c) put the following line:

Print(4095, "In SearchRoot()\n");

Then run it until it crashes and again look at the log.nnn file. If you see that output, it is into the search somewhere. If not, it is dying when creating the threads. BTW for normal use, I would not use smpnice=1 unless you are playing two SMP engines against each other... then it is better, since it won't burn processor cycles when not thinking...
OK, I'll add the print statement and recompile. If/when a crash occurs I'll post the log file. The crash I reported occurred during a Crafty-23.1 vs. Crafty-23.0 game played under xboard. Perhaps that explains the smpnice=1 (which is not in my .craftyrc).

I have seen three or four crashes, all I believe during xboard-hosted games between 23.0 and 23.1. I do not recall a single crash when I was playing (ie, getting killed by) 23.1, or when I was using 23.1 for analysis.

Perhaps the explanation is this: I foolishly forgot that for such matches the setting for both 23.0 and 23.1 are read from my .Xresources files, not from the .craftyrc files. Upon reviewing that .Xresources file, I noted that the combined sizes of the various hash tables for the two engines was more than 5GB, and I only have 6GB of memory. I've reduced the hash sizes for both 23.0 and 23.1; maybe this will eliminate the crashing.
zullil
Posts: 6442
Joined: Tue Jan 09, 2007 12:31 am
Location: PA USA
Full name: Louis Zulli

Re: Crafty-23.1 crash

Post by zullil »

bob wrote: Here's an idea, if you feel like it. At the top of SearchRoot() (in search.c) put the following line:

Print(4095, "In SearchRoot()\n");

Then run it until it crashes and again look at the log.nnn file. If you see that output, it is into the search somewhere. If not, it is dying when creating the threads. BTW for normal use, I would not use smpnice=1 unless you are playing two SMP engines against each other... then it is better, since it won't burn processor cycles when not thinking...
Actually, isn't the location of the crash already indicated by the backtrace:

Code: Select all

Exception Type:  EXC_BAD_ACCESS (SIGSEGV) 
Exception Codes: KERN_INVALID_ADDRESS at 0x000000000000be58 
Crashed Thread:  7 

Code: Select all

Thread 7 Crashed: 
0   crafty-23.1                      0x000000010003190b SearchParallel + 379 
1   crafty-23.1                      0x000000010004762e ThreadWait + 270 
2   crafty-23.1                      0x0000000100020bcd ThreadInit + 333 
3   libSystem.B.dylib                0x00007fff83f9fe8b _pthread_start + 316 
4   libSystem.B.dylib                0x00007fff83f9fd4d thread_start + 13 

Thread 7 crashed with X86 Thread State (64-bit): 
  rax: 0x000000000000001c  rbx: 0x0000000102420000  rcx: 0x0000000000000001  rdx: 0x000000000000be58 
  rdi: 0x0000000000000000  rsi: 0x0000000000000000  rbp: 0x0000000000000e00  rsp: 0x000000010389dcf0 
   r8: 0x0000000000000000   r9: 0x0000000000000000  r10: 0x0000000000000000  r11: 0x0000000000000001 
  r12: 0x0000000102420000  r13: 0x0000000000000001  r14: 0x0000000102420000  r15: 0x0000000000000007 
  rip: 0x000000010003190b  rfl: 0x0000000000010202  cr2: 0x000000000000be58 
If I am reading this correctly, the function that crashed is SearchParallel. The crash was caused by a data access into unmapped memory at address 0x000000000000be58.
BBauer
Posts: 658
Joined: Wed Mar 08, 2006 8:58 pm

Re: Crafty-23.1 crash

Post by BBauer »

Can you use hash=2048M ?
My crafty23.1 crashes with this setting.
kind regards
Bernhard
zullil
Posts: 6442
Joined: Tue Jan 09, 2007 12:31 am
Location: PA USA
Full name: Louis Zulli

Re: Crafty-23.1 crash

Post by zullil »

BBauer wrote:Can you use hash=2048M ?
My crafty23.1 crashes with this setting.
kind regards
Bernhard
Yes, I often use hash=2048M.

Louis
zullil
Posts: 6442
Joined: Tue Jan 09, 2007 12:31 am
Location: PA USA
Full name: Louis Zulli

Re: Crafty-23.1 crash

Post by zullil »

BBauer wrote:Can you use hash=2048M ?
My crafty23.1 crashes with this setting.
kind regards
Bernhard
Now I remember. Bernhard, please look at

http://www.talkchess.com/forum/viewtopic.php?t=30719

There was a bug that Bob has fixed. Is your Crafty-23.1 a 64-bit build?
User avatar
Peter Skinner
Posts: 1763
Joined: Sun Feb 26, 2006 1:49 pm
Location: Edmonton, Alberta, Canada
Full name: Peter Skinner

Re: Crafty-23.1 crash

Post by Peter Skinner »

Graham Banks wrote:
bob wrote:I noticed it said "processor is _not_ Intel" which would only leave AMD I assume. not a K7???

Bob
AMD Athlon MP2200+

Cheers,
Graham.
I run 100 or so games a day on my Phenom system and it never crashes.

Are you sure you are using the latest exe from my site? There was a hashing bug previously and I had recompiled the executable files.

I would try those first, and if they still give you problems I will recompile one for your system.

Peter

PS. On a side note, I notice you are using 96M for hash. Try 64M or 128M as the value is now a true power of 2 with Crafty 23.1. So 32,64,128,256,512,1024,2048,4096,8192,16384....
I was kicked out of Chapters because I moved all the Bibles to the fiction section.
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Crafty-23.1 crash

Post by bob »

zullil wrote:
bob wrote: Here's an idea, if you feel like it. At the top of SearchRoot() (in search.c) put the following line:

Print(4095, "In SearchRoot()\n");

Then run it until it crashes and again look at the log.nnn file. If you see that output, it is into the search somewhere. If not, it is dying when creating the threads. BTW for normal use, I would not use smpnice=1 unless you are playing two SMP engines against each other... then it is better, since it won't burn processor cycles when not thinking...
OK, I'll add the print statement and recompile. If/when a crash occurs I'll post the log file. The crash I reported occurred during a Crafty-23.1 vs. Crafty-23.0 game played under xboard. Perhaps that explains the smpnice=1 (which is not in my .craftyrc).
I made that the default due to popular request. It is slightly less efficient, particularly in very fast games, but it works.


I have seen three or four crashes, all I believe during xboard-hosted games between 23.0 and 23.1. I do not recall a single crash when I was playing (ie, getting killed by) 23.1, or when I was using 23.1 for analysis.

Perhaps the explanation is this: I foolishly forgot that for such matches the setting for both 23.0 and 23.1 are read from my .Xresources files, not from the .craftyrc files. Upon reviewing that .Xresources file, I noted that the combined sizes of the various hash tables for the two engines was more than 5GB, and I only have 6GB of memory. I've reduced the hash sizes for both 23.0 and 23.1; maybe this will eliminate the crashing.
one other question. Do you have "learn=0"? Or else do you use a different directory and book.bin file for each version? There is always a possibility of both trying to execute the learn code at the same instant, and that will break the book, at least.