Index   Main   Namespaces   Classes   Hierarchy   Annotated   Files   Compound   Global   Pages  

GoBoardCheckPerformance.h

Go to the documentation of this file.
00001 //----------------------------------------------------------------------------
00002 /** @file GoBoardCheckPerformance.h
00003     Check performance of the GoBoard class.
00004 
00005     @todo check performance on different kinds of positions.
00006     check execute/undo move, full board repetition, etc. */
00007 //----------------------------------------------------------------------------
00008 
00009 #ifndef GO_BOARDCHECKPERFORMANCE_H
00010 #define GO_BOARDCHECKPERFORMANCE_H
00011 
00012 #include <iosfwd>
00013 #include "GoBoard.h"
00014 
00015 //----------------------------------------------------------------------------
00016 
00017 namespace GoBoardCheckPerformance
00018 {
00019 
00020 /** Performance check of class GoBoard.
00021     Looping through all board points is fastest using board iterator for small
00022     boards, and only slightly slower than if skipping dependency check for
00023     19*19.
00024 
00025     @verbatim
00026     19*19
00027     -----
00028     Time1: 570 For 0..SG_MAXPOINT
00029     Time2: 521 First/LastBoardPoint
00030     Time3: 210 GoBoard::Iterator
00031     Time4: 170 For 0..SG_MAXPOINT, no dependency
00032     Time5: 150 First/LastBoardPoint, no dependency
00033 
00034     13*13
00035     -----
00036     Time1: 561 For 0..SG_MAXPOINT
00037     Time2: 341 First/LastBoardPoint
00038     Time3: 90 GoBoard::Iterator
00039     Time4: 160 For 0..SG_MAXPOINT, no dependency
00040     Time5: 100 First/LastBoardPoint, no dependency
00041 
00042     9*9
00043     ---
00044     Time1: 580 For 0..SG_MAXPOINT
00045     Time2: 230 First/LastBoardPoint
00046     Time3: 50 GoBoard::Iterator
00047     Time4: 150 For 0..SG_MAXPOINT, no dependency
00048     Time5: 60 First/LastBoardPoint, no dependency
00049     @endverbatim */
00050 void CheckPerformance(const GoBoard& board, std::ostream& out);
00051 
00052 } // namespace GoBoardCheckPerformance
00053 
00054 //----------------------------------------------------------------------------
00055 
00056 #endif // GO_BOARDCHECKPERFORMANCE_H


Sun Mar 13 2011 Doxygen 1.7.1