Stockfish Internals

Discussion of chess software programming and technical issues.

Moderator: Ras

whittenizer
Posts: 85
Joined: Sun May 29, 2011 11:56 pm
Location: San Diego

Stockfish Internals

Post by whittenizer »

Hi all,

I'm sifting through the source code for Stockfish, and trying to understand some of the array definitions. The RMult[64], BMult[64], RShift[64], and BShift[64] specifically. How are the values generated. Are they random? Not sure what each value represents. Let's take the first value for:

RMult[64] = {0xD7445CDEC88002C0ULL, ...

What is this value really telling me? I mean I can see how RMult is being used in other places in the code but I'd like to know why these specific values are used.

Thanks so much.
Edmund
Posts: 670
Joined: Mon Dec 03, 2007 3:01 pm
Location: Barcelona, Spain

Re: Stockfish Internals

Post by Edmund »

zamar
Posts: 613
Joined: Sun Jan 18, 2009 7:03 am

Re: Stockfish Internals

Post by zamar »

whittenizer wrote:Hi all,

I'm sifting through the source code for Stockfish, and trying to understand some of the array definitions. The RMult[64], BMult[64], RShift[64], and BShift[64] specifically. How are the values generated. Are they random? Not sure what each value represents. Let's take the first value for:

RMult[64] = {0xD7445CDEC88002C0ULL, ...

What is this value really telling me? I mean I can see how RMult is being used in other places in the code but I'd like to know why these specific values are used.

Thanks so much.
http://chessprogramming.wikispaces.com/ ... for+Magics by Tord Romstad
Joona Kiiski