Rewrite time measurement code

Introduce and use a new Time class designed after
QTime, from Qt framework. Should be a more clear and
self documented code.

As an added benefit we now use 64 bits internally to get
millisecs from system time. This avoids to wrap around
to 0 every 2^32 milliseconds, which is 49.71 days.

No functional change.

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
Marco Costalba
2012-03-03 09:35:56 +01:00
parent b966adf103
commit 161c6b025e
7 changed files with 56 additions and 63 deletions

View File

@@ -243,19 +243,19 @@ namespace {
void perft(Position& pos, istringstream& is) {
int depth, time;
int depth;
if (!(is >> depth))
return;
time = system_time();
Time time = Time::current_time();
int64_t n = Search::perft(pos, depth * ONE_PLY);
time = system_time() - time;
int e = time.elapsed();
std::cout << "\nNodes " << n
<< "\nTime (ms) " << time
<< "\nNodes/second " << int(n / (time / 1000.0)) << std::endl;
<< "\nTime (ms) " << e
<< "\nNodes/second " << int(n / (e / 1000.0)) << std::endl;
}
}