summaryrefslogtreecommitdiff
path: root/lib/igt_stats.h
diff options
context:
space:
mode:
authorDamien Lespiau <damien.lespiau@intel.com>2015-06-25 23:57:49 +0100
committerDamien Lespiau <damien.lespiau@intel.com>2015-06-27 16:03:27 +0100
commit05c10f940f9df3a5b24e2a0b476052fbe5a22282 (patch)
treeb1f99b0cd722b7d6da6c9695d090932c7c3050ad /lib/igt_stats.h
parent9986282c2bb4508a1fd9b774e30e1f4e405ac82e (diff)
stats: Use an algorithm popularised by Knuth to compute mean and variance
Suggested-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Diffstat (limited to 'lib/igt_stats.h')
-rw-r--r--lib/igt_stats.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/igt_stats.h b/lib/igt_stats.h
index a46b399c..acb86a6b 100644
--- a/lib/igt_stats.h
+++ b/lib/igt_stats.h
@@ -28,9 +28,12 @@ typedef struct {
uint64_t *values;
unsigned int capacity;
unsigned int n_values;
+ unsigned int mean_variance_valid : 1;
+ double mean, variance;
} igt_stats_t;
void igt_stats_init(igt_stats_t *stats, unsigned int capacity);
void igt_stats_fini(igt_stats_t *stats);
void igt_stats_push(igt_stats_t *stats, uint64_t value);
double igt_stats_get_mean(igt_stats_t *stats);
+double igt_stats_get_variance(igt_stats_t *stats);