diff --git a/bin/calculate_floprate.py b/bin/calculate_floprate.py index 49b3136128617d98eb42af7c2487f35384709d4f..88f77a2dcb41359da65d18df62e045b02522e2a1 100644 --- a/bin/calculate_floprate.py +++ b/bin/calculate_floprate.py @@ -9,7 +9,7 @@ def parse_data(): ops = frame[frame.what != "time"] # Here we should take 'min', but right now there are some zeroes written - timedata = time.groupby(('exec', 'kernel'))['value'].max() + timedata = time.groupby(('exec', 'kernel'))['value'].min() opsdata = ops.groupby(('exec', 'kernel'))['value'].max() return timedata, opsdata diff --git a/dune/perftool/common/timer.hh b/dune/perftool/common/timer.hh index 8f46c8a5746bf5043ac1dca67976a56da6ff547e..159d9c5ce4296a130897fac2ebd5d2008252ce8c 100644 --- a/dune/perftool/common/timer.hh +++ b/dune/perftool/common/timer.hh @@ -71,12 +71,14 @@ #ifdef ENABLE_COUNTER -#define DUMP_TIMER(name,os,reset) \ - os << exec << " " << #name << " time " << HP_TIMER_ELAPSED(name) << std::endl; \ +#define DUMP_TIMER(name,os,reset)\ + if (HP_TIMER_ELAPSED(name) > 1e-12) \ + os << exec << " " << #name << " time " << HP_TIMER_ELAPSED(name) << std::endl; \ HP_TIMER_OPCOUNTERS(name).reportOperations(os,exec,#name,reset); #define DUMP_AND_ACCUMULATE_TIMER(name,os,reset,time,ops) \ - os << exec << " " << #name << " time " << HP_TIMER_ELAPSED(name) << std::endl; \ + if (HP_TIMER_ELAPSED(name) > 1e-12) \ + os << exec << " " << #name << " time " << HP_TIMER_ELAPSED(name) << std::endl; \ time += HP_TIMER_ELAPSED(name); \ ops += HP_TIMER_OPCOUNTERS(name); \ HP_TIMER_OPCOUNTERS(name).reportOperations(os,exec,#name,reset); @@ -84,11 +86,13 @@ #elif defined ENABLE_HP_TIMERS #define DUMP_TIMER(name,os,reset) \ - os << exec << " " << #name << " time " << HP_TIMER_ELAPSED(name) << std::endl; \ + if (HP_TIMER_ELAPSED(name) > 1e-12) \ + os << exec << " " << #name << " time " << HP_TIMER_ELAPSED(name) << std::endl; \ if (reset) HP_TIMER_RESET(name); #define DUMP_AND_ACCUMULATE_TIMER(name,os,reset,time,ops) \ - os << exec << " " << #name << " time " << HP_TIMER_ELAPSED(name) << std::endl; \ + if (HP_TIMER_ELAPSED(name) > 1e-12) \ + os << exec << " " << #name << " time " << HP_TIMER_ELAPSED(name) << std::endl; \ time += HP_TIMER_ELAPSED(name); \ if (reset) HP_TIMER_RESET(name);