Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Funny position !!!

Author: Tim Foden

Date: 03:05:28 12/06/03

Go up one level in this thread


On December 05, 2003 at 14:33:26, Dieter Buerssner wrote:

>I can maximally store one
>score per entry (but want to experiment with two, soon - one upper and one lower
>bound).

I guess that if you store both an upper and lower bound, you need to also store
separate drafts, eh?

I'd have trouble making this fit in the hash record for GLC, but not for Mantis
(my new program.. doesn't actually play yet :).

In GLC the move takes 23 bits, and the score takes 20 bits and the draft takes
12 bits, and I like to have the full 64 bit hash key in the record, and I don't
want to go over 16 bytes for the whole record.  I have 3 bits to spare...  :)

I realise that I could store approximate values for the score and the depth, and
I could compress the move, but I can't be bothered (I've actually tried move
compression though).


class	CHashTableRec
{
#pragma pack(push, 1)
	UINT64	m_hash;		// 8	hash key for record
	UINT32	m_info1;	// 4	age, draw flag, score type, move
	INT32	m_info2;	// 4	score, depth
#pragma pack(pop)

// the info words look like this:
//
// ------------- m_info2 -------------   ------------- m_info1 -------------
// ssssssss ssssssss ssssdddd dddddddd / aaaatt00 0mmmmmmm mmmmmmmm mmmmmmmm
//
// key:
//	s = score, in millipawns, signed
//	d = depth, in eigths of a ply, unsigned
//	a = age indicator, 0 -> record not used
//	t = score type, none, exact, upper or lower
//	m = move

Mantis will only use 14 bits for the move, 15 bits for the score, and 10 bits
for the depth.  14+15+10+4+2=45, leaving 19 bits.  not quite enough for another
depth and score, but if we have 2 bounds, we don't need a the flag bits, so
14+30+20+4 = 68.  4 bits too many.  If I drop a couple of bits from the depth,
so it's only accurate to 0.5 ply, then all this would fit  :)

Cheers, Tim.



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.