Transposition table utilizattion

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

zd3nik
Posts: 193
Joined: Wed Mar 11, 2015 3:34 am
Location: United States

Transposition table utilizattion

Post by zd3nik »

I measure the percentage of transposition table lookups (probes) that get a hit - a hit meaning there is info about the requested position already stored in the table. And I'm getting around 17-20% hits on average.

When I run other engines in Arena they show 99%-100% in the Hash column. So I'm wondering if that percentage is hit rate as described above, and if so how does one get hit rate so high? I mean, positions don't repeat that often within the search tree do they?
jeffreyan11
Posts: 46
Joined: Sat Sep 12, 2015 5:23 am
Location: United States

Re: Transposition table utilizattion

Post by jeffreyan11 »

The value displayed in Arena is hash full, not hit rate. I usually get 25-30% hash hits midgame if I give sufficient space for the table.
zd3nik
Posts: 193
Joined: Wed Mar 11, 2015 3:34 am
Location: United States

Re: Transposition table utilizattion

Post by zd3nik »

Ah, hash full makes much more sense with those percentages. Thanks for the clarification.

Anyone know what kind of hit rate most top engines get these days? With say 1GB table size?
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Transposition table utilizattion

Post by bob »

zd3nik wrote:Ah, hash full makes much more sense with those percentages. Thanks for the clarification.

Anyone know what kind of hit rate most top engines get these days? With say 1GB table size?
Depends on the position. Normal middle game maybe 20-30% max. In endgames like fine #70, >75%...
User avatar
cdani
Posts: 2204
Joined: Sat Jan 18, 2014 10:24 am
Location: Andorra

Re: Transposition table utilizattion

Post by cdani »

I did a test on Andscacs with current developing version.
Go depth 25 from start position

Code: Select all

hash            nodes       stored   not found       found  % found over found+not found
128 MB	  53.425.849   65.716.083  36.862.078  18.983.223  34%
256 MB	  64.437.112   78.582.936  43.534.378  23.853.827  35%
1024 MB	118.011.879  143.221.524  77.990.897  45.678.716  37%
4096 MB	 74.634.324   88.762.678  48.235.382  29.907.519  38%
zd3nik
Posts: 193
Joined: Wed Mar 11, 2015 3:34 am
Location: United States

Re: Transposition table utilizattion

Post by zd3nik »

Thanks for the feedback guys. It's good to have a sanity check every once in a while. :)
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Transposition table utilizattion

Post by bob »

cdani wrote:I did a test on Andscacs with current developing version.
Go depth 25 from start position

Code: Select all

hash            nodes       stored   not found       found  % found over found+not found
128 MB	  53.425.849   65.716.083  36.862.078  18.983.223  34%
256 MB	  64.437.112   78.582.936  43.534.378  23.853.827  35%
1024 MB	118.011.879  143.221.524  77.990.897  45.678.716  37%
4096 MB	 74.634.324   88.762.678  48.235.382  29.907.519  38%
what is "found"? Signature match? Signature match + draft sufficient to use? Signature match + draft sufficient + bound good enough to stop search???
User avatar
cdani
Posts: 2204
Joined: Sat Jan 18, 2014 10:24 am
Location: Andorra

Re: Transposition table utilizattion

Post by cdani »

bob wrote:
cdani wrote:I did a test on Andscacs with current developing version.
Go depth 25 from start position

Code: Select all

hash            nodes       stored   not found       found  % found over found+not found
128 MB	  53.425.849   65.716.083  36.862.078  18.983.223  34%
256 MB	  64.437.112   78.582.936  43.534.378  23.853.827  35%
1024 MB	118.011.879  143.221.524  77.990.897  45.678.716  37%
4096 MB	 74.634.324   88.762.678  48.235.382  29.907.519  38%
what is "found"? Signature match? Signature match + draft sufficient to use? Signature match + draft sufficient + bound good enough to stop search???
"Found" is just signature match.
Sven
Posts: 4052
Joined: Thu May 15, 2008 9:57 pm
Location: Berlin, Germany
Full name: Sven Schüle

Re: Transposition table utilizattion

Post by Sven »

cdani wrote:
bob wrote:
cdani wrote:I did a test on Andscacs with current developing version.
Go depth 25 from start position

Code: Select all

hash            nodes       stored   not found       found  % found over found+not found
128 MB	  53.425.849   65.716.083  36.862.078  18.983.223  34%
256 MB	  64.437.112   78.582.936  43.534.378  23.853.827  35%
1024 MB	118.011.879  143.221.524  77.990.897  45.678.716  37%
4096 MB	 74.634.324   88.762.678  48.235.382  29.907.519  38%
what is "found"? Signature match? Signature match + draft sufficient to use? Signature match + draft sufficient + bound good enough to stop search???
"Found" is just signature match.
And what is the reason for the small difference between "nodes" and "found + not found"?
User avatar
cdani
Posts: 2204
Joined: Sat Jan 18, 2014 10:24 am
Location: Andorra

Re: Transposition table utilizattion

Post by cdani »

Sven Schüle wrote: And what is the reason for the small difference between "nodes" and "found + not found"?
Sorry, I didn't explain. Nodes are the reported nodes at the end of the search, so they are not directly related to Hash table.