QuickIO  0.2
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
bench.h
Go to the documentation of this file.
1 
15 #include "qev.h"
16 
20 typedef struct qev_bench qev_bench_t;
21 
25 typedef gboolean (*qev_bench_cb)(void *data);
26 
39  const gchar *name,
40  const gchar *file);
41 
45 void qev_bench_free(qev_bench_t *bench);
46 
64 void qev_bench_fn(
65  qev_bench_t *bench,
66  const gchar *name,
67  const qev_bench_cb fn,
68  void *data,
69  const guint n);
70 
88 void qev_bench_fn_for(
89  qev_bench_t *bench,
90  const gchar *name,
91  const qev_bench_cb fn,
92  void *data,
93  const guint ms);
94 
117 void qev_bench_race(
118  qev_bench_t *bench,
119  const gchar *name,
120  const guint n,
121  GThreadFunc one,
122  void *one_data,
123  GThreadFunc two,
124  void *two_data);
125 
140 void qev_bench_record(
141  qev_bench_t *bench,
142  const gchar *name,
143  const gchar *stat,
144  const gboolean success,
145  const gint64 val);
void qev_bench_fn(qev_bench_t *bench, const gchar *name, const qev_bench_cb fn, void *data, const guint n)
Benchmark the runtime of a function n number of times.
struct qev_bench qev_bench_t
Miiiinnnneeee.
Definition: bench.h:20
void qev_bench_fn_for(qev_bench_t *bench, const gchar *name, const qev_bench_cb fn, void *data, const guint ms)
Benchmark how many times a function can run in ms milliseconds.
void qev_bench_record(qev_bench_t *bench, const gchar *name, const gchar *stat, const gboolean success, const gint64 val)
Record a benchmark result.
void qev_bench_race(qev_bench_t *bench, const gchar *name, const guint n, GThreadFunc one, void *one_data, GThreadFunc two, void *two_data)
Race n threads against n threads.
Provides all the qev_* functions that are needed for creating an event loop.
qev_bench_t * qev_bench_new(const gchar *name, const gchar *file)
Create a new benchmark suite.
gboolean(* qev_bench_cb)(void *data)
The callback for all benchmark functions.
Definition: bench.h:25
void qev_bench_free(qev_bench_t *bench)
Clean up after a benchmark, flush all the results to file, and move on.