Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: movegen speeds(was Re: Status of Brutus?)

Author: Keith Evans

Date: 20:57:36 07/29/03

Go up one level in this thread


On July 29, 2003 at 23:47:50, Robert Hyatt wrote:

>On July 29, 2003 at 18:18:31, Keith Evans wrote:
>
>>On July 29, 2003 at 17:35:01, Vincent Diepeveen wrote:
>>
>>>On July 29, 2003 at 17:14:52, Keith Evans wrote:
>>>
>>>>On July 29, 2003 at 17:04:44, Vincent Diepeveen wrote:
>>>>
>>>>>On July 29, 2003 at 16:13:19, Keith Evans wrote:
>>>>>
>>>>>>On July 29, 2003 at 16:00:20, Tord Romstad wrote:
>>>>>>
>>>>>>>On July 29, 2003 at 12:49:49, Keith Evans wrote:
>>>>>>>
>>>>>>>>You're perft performance seems pretty decent to me.
>>>>>>>
>>>>>>>Indeed.  I just did a similar test with my own program on a Pentium 4 2.4 GHz.
>>>>>>>In the position after 1. e4 e5 2. d4 d5, my program generates 30 million moves
>>>>>>>per second.  I guess I could speed it up somewhat, but I don't think I would
>>>>>>>come anywhere close to the speeds reported by Vincent and Angrim.
>>>>>>>
>>>>>>>My move genererator assigns all moves a move ordering score, and also
>>>>>>>determines which moves are checks.  It generates legal moves only.
>>>>>>>
>>>>>>>But anyway, I don't understand why people spend so much time and energy on
>>>>>>>micro-optimising their move generators.  Despite my slow movegen speed, my
>>>>>>>program spends only 1 or 2 percent of its time in the move generator.  I
>>>>>>>guess most other programmers have similar numbers.
>>>>>>>
>>>>>>>Tord
>>>>>>
>>>>>>I'm personally interested in the performance of the move generator in a hardware
>>>>>>chess chip where it is a large percentage of the total cycles. If it were only
>>>>>>1-2% of the time then I wouldn't be interested. Of course a hardware move
>>>>>>generator can generate millions of NPS when only running at say 30 MHz, so it's
>>>>>>a totally different animal than a software generator running on a 3 GHz
>>>>>>processor.
>>>>>
>>>>>hardware doesn't work like that. you cannot store the moves.
>>>>>
>>>>
>>>>Huh? (Duh?) Where did I say that it pregenerates and stores the moves? Of course
>>>>it generates them incrementally.
>>>
>>>but i hope you realize how hard it is to order moves when all you have is 1
>>>bound that gives how far the incremental generation is.
>>>
>>>but if you compare speeds.
>>>
>>>Say that each move costs 1 clock. that's 30 million moves a second at 30Mhz
>>>right?
>>>
>>>Brutus ran at 2002 WCC at something like 33Mhz. So that's 33 MLN a second.
>>>
>>>DIEP i generate way more than 33MLN a second at the 1.6Ghz K7 i had back then.
>>>
>>>At 2.127Ghz it is about 72MLN. this with slow RAM storage. It's probably
>>>relatively faster at a P4 generating moves because of the fast L1 cache there
>>>and everything runs within trace cache when doing a loop for a few millions of
>>>times.
>>>
>>
>>Can you do perft at 72 million NPS? (Actually traverse a tree?) If not then
>>you're quoting something different. You could use Chrilly's 7 cycle/node number
>>which should include everything to generate, make, and unmake moves. So at 33
>>MHz that would be 4.7 MNPS.
>
>
>Do you not see the _utter_ futility of this discussion?  He doesn't understand
>hardware.  He will _never_ try to understand hardware.  So he will _never_
>understand what is possible, what is not possible, what is preferable, what is
>not preferable, etc.  It all gets mixed up with him and the point goes lost.

I guess that everybody must want this thread deleted about now ;-)



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.