Author: Pham Minh Tri
Date: 07:32:07 06/26/01
Go up one level in this thread
On June 26, 2001 at 09:16:54, Vincent Diepeveen wrote: >On June 26, 2001 at 01:20:16, Pham Minh Tri wrote: > >>My program has not attack tables yet. It is based on mailbox structure. I am >>considering to implement them. I wonder how fast of a mailbox+attack tables is, >>compared with bitboard (in percent). Does anyone have experience or make a >>comparison? >>Many thanks, >>Pham > >I can generete non-incremental around a million attacktables a second >or so. I'm only using something extended upon what gnuchess 4.0 >is doing. > >Note that incremental it's not much faster, but you don't need to >check all kind of things anymore like whether someone is in check, >so right now i'm doing things incremental, though in the past it >was faster for me to not do this, because if i get a transposition >cutoff from transtable in qsearch somewhere, then of course i didn't >need to update anything as the probe was first! > >Of course attacktables work cool and of course you need at least >2 types of info: > a) what kind of pieces attack you, just piece number 0..31 is a bit > too primitive. > The ctlN,ctlR,ctlQ from gnu 4.0 is way better > b) how many pieces attack a square is very crucial information, > humans always take that into account for example! > >Of course if you're used to get hundreds of nps a second, then >using attacktables in evaluation suddenly slows you down considerably. > Yes, I have just built my first attacktables without increment and I lost 1/5-1/4 of speed. They burnt all my effort of 6 months to re-write my program to be more efficent :-( >Using attacktables in evaluation is a clear choice that says: "chessknowledge >is more important as other things". > >Note that the good thing if you have good attacktables is that you can >more easily order moves everywhere and be more efficient as you have >more info to decide whether you try a move or not, >and get rid of the dubious futility pruning in qsearch. > >So for the loss of speed you get back a more efficient search besides >a better eval (that last of course still is hard work)! But I guess attacktables do not help move order much, so instead of them, someone could implement something similar (but simpler) for eval only. Did you consider this way? >A trick is to speedup the evaluation is to store it >in a special hashtable. that's just >200 clocks or so to retrieve. Compare that with a 100000 clocks which >an evaluation is costing here. > >I get with several hashtables (i store in transtable and special eval >table my evaluation) about 60% of all my evals out of tables. I do not know how your hashtable of eval table diffirent from normal ones, but I tried to use (normal) hashtables in qsearch, they did not help much (speed and score). I guess your eval should be very heavy (and slow), so they can work. Thank you for sharing knowledge and experience. Pham > >Best regards, >Vincent
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.