Author: Dieter Buerssner
Date: 13:39:01 06/25/04
Go up one level in this thread
On June 25, 2004 at 15:03:21, Gerd Isenberg wrote: >http://chessprogramming.org/cccsearch/ccc.php?art_id=357556 >http://chessprogramming.org/cccsearch/ccc.php?art_id=357568 Thanks Gerd. I think I understood now. >So it really seems negligible for "huge" search functions. > >Maybe my "bad" expirience has other sources by sideeffect or whatever. >But nowadays i often use [ply-1] or [ply-2] and more a lot and prefere external >arrays of nodes. One may simply use threadsafe preallocated external stacks too, >eg. as member of a search thread object. I of course agree, that arrays where you have to access info not only from the current node, must be some sort of global. I had in mind the best line, which I use as a local array. Same for generated moves. int search(... bestline[]) { local_bestline[]; generated_moves[]; gen_moves(generated_moves); /* recursive calls */ search(local_bestline) /* And update bestline, when needed */ } instead of having something like a global bestline[MAXPLY][MAXPLY]. and an expicit move stack. At least in my engine, I don't need access to the list of generated moves from another recursion level. The generated_moves array might come close to the 4 kB (for me 8 bytes per move), local_bestline for me is 256 bytes, other local vars in search will hardly matter. Cheers, Dieter
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.