Mir

CompositorReport as used by DefaultDisplayBufferCompositor can't measure render time

Bug #1350716 reported by Daniel van Vugt on 2014-07-31
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mir
Fix Released
Medium
Daniel van Vugt
mir (Ubuntu)
Medium
Unassigned

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).

Related branches

Changed in mir:
assignee: nobody → Daniel van Vugt (vanvugt)
milestone: none → 0.10.0
status: Triaged → In Progress
PS Jenkins bot (ps-jenkins) wrote :

Fix committed into lp:mir at revision 2183, scheduled for release in mir, milestone 0.10.0

Changed in mir:
status: In Progress → Fix Committed
PS Jenkins bot (ps-jenkins) wrote :

Fix committed into lp:mir at revision None, scheduled for release in mir, milestone 0.10.0

Changed in mir:
status: Fix Committed → Fix Released
Daniel van Vugt (vanvugt) wrote :

mir (0.10.0+15.04.20150107.2-0ubuntu1) vivid; urgency=medium

Changed in mir (Ubuntu):
importance: Undecided → Medium
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers