Add some timing for compositing

This commit is contained in:
Patrick Walton 2012-07-12 20:04:00 -07:00
parent 127189bdc8
commit 5afae787ce

View file

@ -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<Msg>;
@ -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<Msg>) {
let key_handlers: @dvec<chan<()>> = @dvec();
let event_listeners: @dvec<chan<Event>> = @dvec();
@ -108,7 +116,10 @@ fn mainloop(po: port<Msg>) {
#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();
}