Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: High performance move generation

Author: leonid

Date: 15:58:20 11/16/99

Go up one level in this thread


On November 16, 1999 at 18:12:48, Dave Gomboc wrote:

>On November 16, 1999 at 16:11:55, Dan Newman wrote:
>
>>On November 16, 1999 at 06:11:48, Alexander Kure wrote:
>>
>>
>>>A few months ago I implemented a movegenerator for 0x88 board and tried to do
>>>some performance improvements so I am glad to see this thread starting ;-)
>>>My pseudo move-generator app. generates 3 MNodes on a Pentium MMX 233 Mhz in
>>>Vincent's position and is app. 2.5 times faster on a Pentium III 550 Mhz giving
>>>7.5 MNodes (without sorting and assigning scores for a move). Far away from the
>>>high score, I'm afraid ;-)
>>>Unfortunately I can not show up with the code, cause I am at work right now.
>>>Maybe later if requested.
>>>
>>>But I doubt if using a switch instead of indexing through a piece array gives
>>>any performance improvement. But directly proccessing each direction (e.g. NE,
>>>NW, SE, SW for Bishop) for a piece seperately instead of looping and indexing a
>>>piece dependent direction array surly yields some performance improvement. While
>>>this lacks elegance it improves speed.
>>>I will check this out!
>>
>>The code certainly is ugly.  My 0x88 move generator code is 767 lines long
>>and that's with a lot of macros to shorten it.  The bitboard code is at 1168
>>LOC--but that also includes a check evasions generator.


On what language those 767 code lines are written? And do your "move generator"
produce the moves for both sides or for one color? And one last question: What
is exactly the "check evasions generator"?

Thsnks,
Leonid.








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.