mirror of
https://github.com/sockspls/badfish
synced 2025-04-29 08:13:08 +00:00
Add simple debug hit rate counter
Add a very simple debug framework to measure the hit rate of a given condition. Simply insert macro dbg_hit_on(x); Anywhere you want to compute hit rate of condition x and then call, as example in poll(), function dbg_print_hit_rate() to print current results. Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
parent
d786822b92
commit
61f41a057d
2 changed files with 24 additions and 0 deletions
16
src/misc.cpp
16
src/misc.cpp
|
@ -38,15 +38,31 @@ int gettimeofday(struct timeval * tp, struct timezone * tzp);
|
|||
|
||||
#include <cstdio>
|
||||
#include <iomanip>
|
||||
#include <iostream>
|
||||
#include <sstream>
|
||||
|
||||
#include "misc.h"
|
||||
|
||||
|
||||
////
|
||||
//// Variables
|
||||
////
|
||||
|
||||
long dbg_cnt0 = 0;
|
||||
long dbg_cnt1 = 0;
|
||||
|
||||
|
||||
////
|
||||
//// Functions
|
||||
////
|
||||
|
||||
void dbg_print_hit_rate() {
|
||||
|
||||
std::cout << "Total " << dbg_cnt0 << " Hit " << dbg_cnt1
|
||||
<< " hit rate (%) " << (dbg_cnt1*100)/(dbg_cnt0 ? dbg_cnt0 : 1)
|
||||
<< std::endl;
|
||||
}
|
||||
|
||||
/// engine_name() returns the full name of the current Glaurung version.
|
||||
/// This will be either "Glaurung YYMMDD" (where YYMMDD is the date when the
|
||||
/// program was compiled) or "Glaurung <version number>", depending on whether
|
||||
|
|
|
@ -56,5 +56,13 @@ extern int get_system_time();
|
|||
extern int cpu_count();
|
||||
extern int Bioskey();
|
||||
|
||||
////
|
||||
//// Debug
|
||||
////
|
||||
extern long dbg_cnt0;
|
||||
extern long dbg_cnt1;
|
||||
extern void dbg_print_hit_rate();
|
||||
|
||||
#define dbg_hit_on(x) { dbg_cnt0++; if (x) dbg_cnt1++; }
|
||||
|
||||
#endif // !defined(MISC_H_INCLUDED)
|
||||
|
|
Loading…
Add table
Reference in a new issue