TT question?

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

ZirconiumX
Posts: 1334
Joined: Sun Jul 17, 2011 11:14 am

Re: TT question?

Post by ZirconiumX »

Now I am on the computer, not the droid, I can give you some figures.

Probe TT in QSearch = Off

Score : +0.28
Depth : 14/1
Time : 00:00:30
Nodes : 6600000
N/sec : 217702
Hash %: 78.5
1. Nc3 Nc6 2. Nf3 Nf6 3. d4 e6 4. e4 d5

Probe TT in QSearch = On

Score : +0.30
Depth : 14/1
Time : 00:00:31
Nodes : 4780000
N/sec : 151186
Hash %: 65.6
1. Nc3 Nc6 2. Nf3 Nf6 3. d4 d5 4. Qd3 g6 5. Bf4 Nh5 6. Be5

So less nodes (a quarter reduction), and I get a longer PV. But NPS takes a large hit (-30%), and the hash takes longer to fill (I used 16MB).

I have Probe TT in QSearch set to Off, because I think that the Fruit hash probe was not designed for use in QSearch.

Matthew:out
Some believe in the almighty dollar.

I believe in the almighty printf statement.
mar
Posts: 2555
Joined: Fri Nov 26, 2010 2:00 pm
Location: Czech Republic
Full name: Martin Sedlak

Re: TT question?

Post by mar »

ZirconiumX wrote:I have Probe TT in QSearch set to Off, because I think that the Fruit hash probe was not designed for use in QSearch.
Of course you have to keep in mind that there will be negative depths in qsearch (in fact depths <=0). So if Fruit's TT code can only cope with depths>=0 (i don't know, just guessing), this may be an issue. Also note that in qsearch it doesn't matter whether you are on depth -1 or depth -5, for example.
EDIT: my tests always showed a negligible but nice improvement in time to depth so it contradicts with the figures you posted. Are you sure your implementation of QSearch with TT on (probe and store) is ok?
User avatar
lucasart
Posts: 3232
Joined: Mon May 31, 2010 1:29 pm
Full name: lucasart

Re: TT question?

Post by lucasart »

ZirconiumX wrote:FruitFly probes (doesn't write) the TT, and uses that as a guided stand-pat.

One experiment I did in the abandoned firstchess based magic was giving QS a dedicated TT. I guess that might be something to try again, if only for the move ordering benefits.

Matthew:out
what do you mean by "guided stand pat" ? you mean you probe the TT in the QS to retrieve the eval and save time calculating it ? or do you store stalemate info for example (your post just gave me that idea..)
ZirconiumX
Posts: 1334
Joined: Sun Jul 17, 2011 11:14 am

Re: TT question?

Post by ZirconiumX »

Martin,

The original Fruit probing core did check that depth was >= 1, but fruitfly omits that for a slight speedup.

Lucas,

I mean we take the cutoffs if there are any, and if the hash move returned is not a capture, then I return the static evaluation.

Fruit hash type has an upper bound and a lower bound, so I am not sure if that is possible, but I will try it.

As for stalemate, I think fruit simply returns the drawscore.

Matthew:out
Some believe in the almighty dollar.

I believe in the almighty printf statement.