Mir's default DisplayBuffer clone mode forces all outputs to the rate of the slowest one (and increases latency too)

Bug #1395416 reported by Daniel van Vugt
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mir
Triaged
Medium
Unassigned
mir (Ubuntu)
Triaged
Medium
Unassigned

Bug Description

Clone mode forces all outputs to render at the rate of the slowest one.

This is unnecessary. If you're cloning between say a 24Hz TV and a 60Hz laptop then Mir should be smart enough to give them separate compositors so as to keep the laptop screen rendering at 60Hz.

tags: added: multimonitor
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Oops, forgot it's defaulting to clone mode so the compositing rate is indeed throttled to the slowest output (24Hz).

Setting the outputs side-by-side forces Mir to create separate compositors:
    bin/mir_demo_server_shell --display-config=sidebyside
so now they're independent and the laptop display renders smoothly at 60Hz.

Changed in mir:
status: Triaged → Invalid
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

I think it would be helpful to make the decision of whether outputs share a single DisplayBuffer an option. Because people might want a faster smoother clone mode, or a single display buffer that spans all outputs (for efficiency or to force a stubborn shell to span). Our default heuristic doesn't let the user choose this right now.

summary: - [regression] Multimonitor frame sync is running very slow
+ Clone mode forces all outputs to render at the rate of the slowest one
Changed in mir:
status: Invalid → Triaged
tags: removed: regression
description: updated
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

This bug is getting annoying. It means I can't plug an external monitor into a laptop and easily measure its latency using mirvanity. Because the default DisplayBuffer cloning increases latency by an extra frame or so.

summary: - Clone mode forces all outputs to render at the rate of the slowest one
+ Mir's default DisplayBuffer clone mode forces all outputs to the rate of
+ the slowest one (and increases latency too)
tags: added: performance
Revision history for this message
Michał Sawicz (saviq) wrote :

Syncing task from Mir.

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

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.