Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Strength question

Author: Scott Gasch

Date: 14:56:30 01/05/03

Go up one level in this thread


On January 05, 2003 at 17:07:41, Bruce Moreland wrote:

>How much stronger would your program be if move generation and make/unmake took
>zero cycles?
>
>My program spends 43% of its time on this.  That is move generation,
>make/unmake, static exchange, and check detection.

This is based on the latest profile run I have.  The percentages are for that
routine alone, not including functions it calls.  I got this info by running
down the top ~30 CPU time hungry routines in monsoon, tossing things related to
search and eval, and sorting the rest into three categories: SEE, Generator and
Datastruct update.

SEE routines:
 GetAttacks  [hand written asm]    11.1%
 SEE	                            4.9%
 SortSEEList                        1.8%
 ClearPieceByLocation               0.5%
TOTAL SEE_________________________ 18.3%

Generator routines:
 AddMove                            7.1%
 GeneratePieceChecksAndCaptures0x88 6.6%
 Generate                           2.7%
 WouldGiveCheck                     2.7%
 ExposesCheck                       1.4%
 GeneratePieceCaptures              2.3%
 GenerateEscapes                    1.7%
 GeneratePawnCaptures               1.1%
 GenerateNonCapturePromotions       0.6%
 GeneratePieceMoves                 0.5%
 GeneratePawnMoves                  0.1%
 GeneratePieceMovesAndCaptures      0.1%
TOTAL GEN_________________________ 26.9%

Datastructure update routines:
 MakeMove                           2.9%
 UnmakeMove                         2.6%
 LiftPiece                          0.5%
 PlacePiece                         0.2%
 SlidePiece                         0.0%
TOTAL DATASTRUCT UPDATE____________ 6.2%

GRAND TOTAL:                       51.4%

Scott



This page took 0.01 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.