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 
00010 #ifndef GO_BOARDCHECKPERFORMANCE_H
00011 #define GO_BOARDCHECKPERFORMANCE_H
00012 
00013 #include <iosfwd>
00014 #include "GoBoard.h"
00015 
00016 //----------------------------------------------------------------------------
00017 
00018 namespace GoBoardCheckPerformance
00019 {
00020 
00021 /** Performance check of class GoBoard.
00022     Looping through all board points is fastest using board iterator for small
00023     boards, and only slightly slower than if skipping dependency check for
00024     19*19.
00025 
00026     @verbatim
00027     19*19
00028     -----
00029     Time1: 570 For 0..SG_MAXPOINT
00030     Time2: 521 First/LastBoardPoint
00031     Time3: 210 GoBoard::Iterator
00032     Time4: 170 For 0..SG_MAXPOINT, no dependency
00033     Time5: 150 First/LastBoardPoint, no dependency
00034 
00035     13*13
00036     -----
00037     Time1: 561 For 0..SG_MAXPOINT
00038     Time2: 341 First/LastBoardPoint
00039     Time3: 90 GoBoard::Iterator
00040     Time4: 160 For 0..SG_MAXPOINT, no dependency
00041     Time5: 100 First/LastBoardPoint, no dependency
00042 
00043     9*9
00044     ---
00045     Time1: 580 For 0..SG_MAXPOINT
00046     Time2: 230 First/LastBoardPoint
00047     Time3: 50 GoBoard::Iterator
00048     Time4: 150 For 0..SG_MAXPOINT, no dependency
00049     Time5: 60 First/LastBoardPoint, no dependency
00050     @endverbatim
00051 */
00052 void CheckPerformance(const GoBoard& board, std::ostream& out);
00053 
00054 } // namespace GoBoardCheckPerformance
00055 
00056 //----------------------------------------------------------------------------
00057 
00058 #endif // GO_BOARDCHECKPERFORMANCE_H


17 Jun 2010 Doxygen 1.4.7