Author: Robert Hyatt
Date: 06:48:02 01/26/01
Go up one level in this thread
On January 26, 2001 at 05:31:28, Bernhard Bauer wrote: >On January 26, 2001 at 04:52:42, Bernhard Bauer wrote: > >>On January 25, 2001 at 09:48:00, Robert Hyatt wrote: >> >>>On January 25, 2001 at 02:32:01, Bernhard Bauer wrote: >>> >>>>On January 24, 2001 at 12:06:40, Robert Hyatt wrote: >>>> >>>>>On January 24, 2001 at 10:22:28, Bernhard Bauer wrote: >>>>> >>>>>>On January 24, 2001 at 06:51:30, David Rasmussen wrote: >>>>>> >>>>>>>I have a problem with Crafty. >>>>>>> >>>>>>>I'm trying to run it on a solaris system with 24 CPUs (I've tried it as well on >>>>>>>a 12 CPU machine of the same kind). >>>>>>> >>>>>>>I sometimes get the message "ERROR. no SMP block can be allocated". >>>>>>>What does this mean? What is the problem >>>>>> >>>>>>In chess.h is a line >>>>>>#define MAX_BLOCKS 16*CPUS >>>>>> >>>>>>You may change this line to a greater value. >>>>>>For CPUS=2 this did noz work for me, so I use >>>>>>#define MAX_BLOCKS 128 >>>>>>and that works. >>>>>> >>>>>>Kind regards >>>>>>Bernhard >>>>> >>>>> >>>>>When you say "did not work for me" do you mean you got the out of blocks >>>>>error? 2*16 should work for a dual. 4*16 works for my quad and never >>>>>produces an error. If you watch the SMP part of the statistics output, it >>>>>shows the max number of blocks used during a search: >>>>> >>>>> SMP-> split=507 stop=83 data=17/64 cpu=22.77 elap=6.18 >>>>> >>>>>in my case, 17 blocks was the peak usage, with a total of 64 (4*16). I would >>>>>definitely be interested to know your peak number for a dual system. I would >>>>>expect something in the 8-10 range typically. On my quad it averages about 12 >>>>>over the course of a game. >>>> >>>>Dear Mr. Hyatt, >>>> >>>>when I compiled Crafty 18.1 with makefile.nt under WIN2000 with the MS compiler >>>>C/C++-Compiler, Version 12.00.8804 >>>>Crafty compiled fine, no errors, but when I started the exe file I got an error >>>>immediatly. So if you ask "did you got the out of blocks error?" I will say yes >>>>or no, it simply didn't run. A window poped up which said I had a memory error. >>>>So I had no idea what the error coud be. First when I noticed the change from >>>>17.14 to 18.1 in chess.h I was able to compile Crafty for SMP. >>>> >>>>When I ran the LCT2 test for 30 min/pos I got a peak number of 10/128. >>>> >>>>Kind regards >>>>Bernhard >>> >>> >>>OK... two issues... >>> >>>1. 10 blocks max seems about right for 2 cpus. since the default would be >>>to have 32 (2*16) you should not have to change this. >>> >>>2. if this fixed your crash (no other changes at all) then there is _another_ >>>problem. Could you compile with 32 blocks and debugging enabled and run under >>>the debugger to see where it is crashing? This has to either be an optimizing >>>problem or a serious bug in Crafty itself. It would be nice to know which. >>> >>>Bob >> >>Looks like there is n error in Init.c at line 1451. >>The statement >> for (i=0;i<64+1;i++) >> LockInit(local[i]->lock); >>gives an error for >> Name Value >> i 33 >>local[i]->lock 0x0000ad80 >> >>And at memory location 0x0000ad80 the access violation occurs. >> >>So I changed the statement "for (i=0;i<64+1;i++)" to "for (i=0;i<32+1;i++)" >>but now after invokink crafty nothing happens that means no output at all. >>Anyway hope that helps a little. >> >>Kind regards >>Bernhard > >Sorry, I forgot to compile with the /G6 option. >Now it works for >for (i=0;i<16*CPUS+1;i++) in init.c safer is i<MAX_BLOCKS+1 in case the formula for split blocks ever changes. I have fixed this in init.c for 18.x versions from this point forward. thanks and good work.. >and #define MAX_BLOCKS 16*CPUS in chess.h > >Kind regards >Bernhard
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.