touch-packages team mailing list archive
-
touch-packages team
-
Mailing list archive
-
Message #46135
[Bug 1350716] Re: CompositorReport as used by DefaultDisplayBufferCompositor can't measure render time
mir (0.10.0+15.04.20150107.2-0ubuntu1) vivid; urgency=medium
** Changed in: mir (Ubuntu)
Importance: Undecided => Medium
** Changed in: mir (Ubuntu)
Status: New => Fix Released
--
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to mir in Ubuntu.
https://bugs.launchpad.net/bugs/1350716
Title:
CompositorReport as used by DefaultDisplayBufferCompositor can't
measure render time
Status in Mir:
Fix Released
Status in mir package in Ubuntu:
Fix Released
Bug description:
CompositorReport as used by DefaultDisplayBufferCompositor can't
measure render time.
Presently we have:
// [A]
report->began_frame(this);
...
if (display_buffer.post_renderables_if_optimizable(renderable_list)) // [B] before page flip
{
renderer->suspend();
report->finished_frame(true, this);
}
else
{
display_buffer.make_current();
renderer->set_rotation(display_buffer.orientation());
renderer->begin(); // TODO deprecatable now?
renderer->render(renderable_list);
display_buffer.post_update(); // swap buffers, [B], then page flip
renderer->end();
report->finished_frame(false, this);
}
// [C]
Compositor report correctly reports "frame time" as [C]-[A]. However a
more useful measure is render time which is [B]-[A]. But we can't do
that yet as we'd have to insert a reporting point in the middle of the
post_ functions (or split them) so as to not include page flipping
time in "render time", while still including the final eglSwapBuffers
(if any).
To manage notifications about this bug go to:
https://bugs.launchpad.net/mir/+bug/1350716/+subscriptions