diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2016-05-24 16:24:15 +0100 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2016-05-24 16:43:31 +0100 |
commit | c74e07121085bb9d1957e8e8795a2464e43bd592 (patch) | |
tree | becb7d01fd16007530ddd33cf645e4a854635a11 /tests/kms_cursor_legacy.c | |
parent | dab6b6b62dce6baf041ea5387af197626737c8a2 (diff) |
igt/kms_cursor_legacy: Show basic stats of iterations per child
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'tests/kms_cursor_legacy.c')
-rw-r--r-- | tests/kms_cursor_legacy.c | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/tests/kms_cursor_legacy.c b/tests/kms_cursor_legacy.c index aff3ff55..de63dac9 100644 --- a/tests/kms_cursor_legacy.c +++ b/tests/kms_cursor_legacy.c @@ -26,6 +26,7 @@ #include <sched.h> #include "igt.h" +#include "igt_stats.h" IGT_TEST_DESCRIPTION("Stress legacy cursor ioctl"); @@ -48,8 +49,12 @@ static void stress(struct data *data, { drmModeRes *r; struct drm_mode_cursor arg; + uint64_t *results; int n; + results = mmap(NULL, 4096, PROT_WRITE, MAP_SHARED | MAP_ANON, -1, 0); + igt_assert(results != MAP_FAILED); + r = drmModeGetResources(data->fd); igt_assert(r); @@ -82,12 +87,32 @@ static void stress(struct data *data, count++; } - igt_info("[%d] count=%lu\n", child, count); + igt_debug("[%d] count=%lu\n", child, count); + results[child] = count; } igt_waitchildren(); + if (num_children > 1) { + igt_stats_t stats; + + igt_stats_init_with_size(&stats, num_children); + results[num_children] = 0; + for (int child = 0; child < num_children; child++) { + igt_stats_push(&stats, results[child]); + results[num_children] += results[child]; + } + igt_info("Total updates %llu (median of %d processes is %.2f)\n", + (long long)results[num_children], + num_children, + igt_stats_get_median(&stats)); + igt_stats_fini(&stats); + } else { + igt_info("Total updates %llu\n", (long long)results[0]); + } + gem_close(data->fd, arg.handle); drmModeFreeResources(r); + munmap(results, 4096); } igt_main |