diff options
author | Thomas Schwinge <thomas@codesourcery.com> | 2013-12-20 09:29:29 +0100 |
---|---|---|
committer | Thomas Schwinge <thomas@codesourcery.com> | 2013-12-20 09:29:29 +0100 |
commit | a65dd355fb80a05215e15ae97649de52aec885e3 (patch) | |
tree | 81701bb0c6b648630f2bf1729a85d7f5eb49e67b /benchtests/bench-timing.h | |
parent | 296a5732f94abe4d5699dc981e4ccfb950b48cee (diff) | |
parent | b4578bab30f72cddd2cf38abfb39f9c8dc892249 (diff) |
Merge branch 'baseline' into refs/top-bases/tschwinge/Roger_Whittaker
Diffstat (limited to 'benchtests/bench-timing.h')
-rw-r--r-- | benchtests/bench-timing.h | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/benchtests/bench-timing.h b/benchtests/bench-timing.h index 264d4b8bab..619994f145 100644 --- a/benchtests/bench-timing.h +++ b/benchtests/bench-timing.h @@ -25,10 +25,10 @@ hp_timing_t _dl_hp_timing_overhead; typedef hp_timing_t timing_t; -# define TIMING_INIT(iters) \ +# define TIMING_INIT(res) \ ({ \ HP_TIMING_DIFF_INIT(); \ - (iters) = 1000; \ + (res) = 1; \ }) # define TIMING_NOW(var) HP_TIMING_NOW (var) @@ -41,17 +41,17 @@ typedef hp_timing_t timing_t; (min) / (d_iters), 1e6 * (d_total_i) / (d_total_s)); #else + +#include <time.h> typedef uint64_t timing_t; -/* Measure 1000 times the resolution of the clock. So for a 1ns - resolution clock, we measure 1000 iterations of the function call at a - time. Measurements close to the minimum clock resolution won't make - much sense, but it's better than having nothing at all. */ -# define TIMING_INIT(iters) \ +/* Measure the resolution of the clock so we can scale the number of + benchmark iterations by this value. */ +# define TIMING_INIT(res) \ ({ \ struct timespec start; \ clock_getres (CLOCK_PROCESS_CPUTIME_ID, &start); \ - (iters) = 1000 * start.tv_nsec; \ + (res) = start.tv_nsec; \ }) # define TIMING_NOW(var) \ @@ -70,3 +70,6 @@ typedef uint64_t timing_t; (min) / (d_iters), 1e9 * (d_total_i) / (d_total_s)) #endif + +#define TIMING_PRINT_MEAN(d_total_s, d_iters) \ + printf ("\t%g", (d_total_s) / (d_iters)) |