From 0ca20e3e6c0d7cd059c02772315874ef8ae29029 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Thu, 18 Jul 2019 09:33:49 +0200 Subject: [PATCH] render: time how long time it takes to render a frame --- render.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/render.c b/render.c index aebd81b5..718675e3 100644 --- a/render.c +++ b/render.c @@ -2,6 +2,7 @@ #include #include +#include #include #include @@ -263,6 +264,9 @@ static const struct wl_callback_listener frame_listener = { void grid_render(struct terminal *term) { + struct timeval start_time; + gettimeofday(&start_time, NULL); + static int last_cursor; assert(term->width > 0); @@ -411,6 +415,14 @@ grid_render(struct terminal *term) wl_callback_add_listener(term->frame_callback, &frame_listener, term); wl_surface_commit(term->wl.surface); + + struct timeval end_time; + gettimeofday(&end_time, NULL); + + struct timeval render_time; + timersub(&end_time, &start_time, &render_time); + LOG_INFO("frame rendered in %lds %ldms", + render_time.tv_sec, render_time.tv_usec / 1000); } static void