(the sum of the measurements)/n
spread = (maximum measurement) - (minimum measurement)
double stddev(int a, unsigned n)
assert n > 1
const double mean = mean(a, n)
double stddev = 0.0
for i = 1 to n
d = a[i] - mean
stddev += d*d
return sqrt(stddev/(n - 1))
gettimeofday for time, debugging
malloc routines for space.
time command.
$ time anagram star arts rats star tars tsar real 0m0.334s user 0m0.232s sys 0m0.008s $
class stopwatch unsigned elapsed() void start() void stop()
stopwatch sw
sw.start()
for i = 1 to n
f()
sw.stop()
printf("%g\n", sw.elapsed()/((double) n));
class episode_timer episode_timer(unsigned size = 1024) void start(void) void stop(void) void clear() double stddev() double average() unsigned total() unsigned count()
episode_time et
for i = 1 to n
et.start()
f()
et.stop()
printf("%g (%g)\n", et.average(), et.stddev());