From: Marco Costalba Date: Fri, 30 Dec 2011 15:14:24 +0000 (+0100) Subject: Simplify debug functions X-Git-Url: https://git.sesse.net/?p=stockfish;a=commitdiff_plain;h=808a312e1ce8cf20bd2ee668a05a246bf0e0f3b2 Simplify debug functions No functional change. Signed-off-by: Marco Costalba --- diff --git a/src/misc.cpp b/src/misc.cpp index 9cd95392..2fb5e816 100644 --- a/src/misc.cpp +++ b/src/misc.cpp @@ -39,12 +39,12 @@ # include #endif +#include #include #include #include #include #include -#include #include "bitcount.h" #include "misc.h" @@ -52,7 +52,6 @@ using namespace std; - /// Version number. If Version is left empty, then Tag plus current /// date (in the format YYMMDD) is used as a version number. @@ -93,44 +92,25 @@ const string engine_info(bool to_uci) { } -/// Debug stuff. Helper functions used mainly for debugging purposes - -static uint64_t dbg_hit_cnt0; -static uint64_t dbg_hit_cnt1; -static uint64_t dbg_mean_cnt0; -static uint64_t dbg_mean_cnt1; - -void dbg_print_hit_rate() { - - if (dbg_hit_cnt0) - cerr << "Total " << dbg_hit_cnt0 << " Hit " << dbg_hit_cnt1 - << " hit rate (%) " << 100 * dbg_hit_cnt1 / dbg_hit_cnt0 << endl; -} +/// Debug functions used mainly to collect run-time statistics -void dbg_print_mean() { +static uint64_t hits[2], means[2]; - if (dbg_mean_cnt0) - cerr << "Total " << dbg_mean_cnt0 << " Mean " - << (float)dbg_mean_cnt1 / dbg_mean_cnt0 << endl; -} - -void dbg_mean_of(int v) { +void dbg_hit_on(bool b) { hits[0]++; if (b) hits[1]++; } +void dbg_hit_on_c(bool c, bool b) { if (c) dbg_hit_on(b); } +void dbg_mean_of(int v) { means[0]++; means[1] += v; } - dbg_mean_cnt0++; - dbg_mean_cnt1 += v; -} +void dbg_print() { -void dbg_hit_on(bool b) { + if (hits[0]) + cerr << "Total " << hits[0] << " Hits " << hits[1] + << " hit rate (%) " << 100 * hits[1] / hits[0] << endl; - dbg_hit_cnt0++; - if (b) - dbg_hit_cnt1++; + if (means[0]) + cerr << "Total " << means[0] << " Mean " + << (float)means[1] / means[0] << endl; } -void dbg_hit_on_c(bool c, bool b) { if (c) dbg_hit_on(b); } -void dbg_before() { dbg_hit_on(false); } -void dbg_after() { dbg_hit_on(true); dbg_hit_cnt0--; } - /// system_time() returns the current system time, measured in milliseconds diff --git a/src/misc.h b/src/misc.h index 55e2f55e..d6fb062f 100644 --- a/src/misc.h +++ b/src/misc.h @@ -34,11 +34,8 @@ extern void prefetch(char* addr); extern void dbg_hit_on(bool b); extern void dbg_hit_on_c(bool c, bool b); -extern void dbg_before(); -extern void dbg_after(); extern void dbg_mean_of(int v); -extern void dbg_print_hit_rate(); -extern void dbg_print_mean(); +extern void dbg_print(); class Position; extern Move move_from_uci(const Position& pos, const std::string& str); diff --git a/src/search.cpp b/src/search.cpp index 9222cbbd..ebdcff0f 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -1974,9 +1974,7 @@ void do_timer_event() { if (system_time() - lastInfoTime >= 1000 || !lastInfoTime) { lastInfoTime = system_time(); - - dbg_print_mean(); - dbg_print_hit_rate(); + dbg_print(); } if (Limits.ponder) diff --git a/src/thread.cpp b/src/thread.cpp index 4c582e08..bc26d4df 100644 --- a/src/thread.cpp +++ b/src/thread.cpp @@ -176,10 +176,10 @@ void ThreadsManager::init() { threads[i].threadID = i; #if defined(_MSC_VER) - threads[i].handle = CreateThread(NULL, 0, start_routine, (LPVOID)&threads[i], 0, NULL); + threads[i].handle = CreateThread(NULL, 0, start_routine, &threads[i], 0, NULL); bool ok = (threads[i].handle != NULL); #else - bool ok = !pthread_create(&threads[i].handle, NULL, start_routine, (void*)&threads[i]); + bool ok = !pthread_create(&threads[i].handle, NULL, start_routine, &threads[i]); #endif if (!ok)