From 5afae787ce49234faefbc5eb3067a65efce21e0c Mon Sep 17 00:00:00 2001 From: Patrick Walton Date: Thu, 12 Jul 2012 20:04:00 -0700 Subject: [PATCH] Add some timing for compositing --- src/servo/platform/osmain.rs | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/servo/platform/osmain.rs b/src/servo/platform/osmain.rs index daee2460906..6ea213e1542 100644 --- a/src/servo/platform/osmain.rs +++ b/src/servo/platform/osmain.rs @@ -13,6 +13,7 @@ import dom::event::{Event, ResizeEvent}; import layers::ImageLayer; import geom::size::Size2D; import std::cmp::fuzzy_eq; +import std::time::precise_time_ns; import vec::push; type OSMain = chan; @@ -34,6 +35,13 @@ fn OSMain() -> OSMain { } } +fn time(msg: str, callback: fn()) { + let start_time = precise_time_ns(); + callback(); + let end_time = precise_time_ns(); + #debug("%s took %u ms", msg, ((end_time - start_time) / 1000000u64) as uint); +} + fn mainloop(po: port) { let key_handlers: @dvec> = @dvec(); let event_listeners: @dvec> = @dvec(); @@ -108,7 +116,10 @@ fn mainloop(po: port) { #debug("osmain: drawing to screen"); - layers::rendergl::render_scene(context, *scene); + do time("compositing") { + layers::rendergl::render_scene(context, *scene); + } + glut::swap_buffers(); glut::post_redisplay(); }