Mir

[performance] Android overlays don't honour eglSwapInterval 0

Bug #1369763 reported by Alberto Aguirre on 2014-09-15
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Mir
Won't Fix
Medium
Kevin DuBois
mir-android-platform
Undecided
Unassigned
mir (Ubuntu)
Medium
Unassigned

Bug Description

eglSwapInterval 0 does not work when overlays are enabled.

Both of these report the same fps:

MIR_CLIENT_PERF_REPORT=log ./mir_demo_server_basic --launch-client="./mir_demo_client_egltriangle" --disable-overlays false
MIR_CLIENT_PERF_REPORT=log ./mir_demo_server_basic --launch-client="./mir_demo_client_egltriangle -n" --disable-overlays false

Related branches

Kevin DuBois (kdub) on 2014-09-15
Changed in mir:
status: New → Confirmed
Changed in mir:
importance: Medium → High

We don't actually have any code that uses swap interval 0 in production. Only demos. So it's not a big priority to implement this yet.

summary: - eglSwapInterval 0 does not work when overlays are enabled
+ Overlays don't honor eglSwapInterval 0 (not implemented yet)
tags: added: enhancement
Changed in mir:
importance: High → Medium
Changed in mir:
status: Confirmed → Triaged
milestone: 0.8.0 → none

It's not that this is only a problem with swap_interval == 0. Even with 1 (i.e. without '-n'), we seem to be rendering at 67fps on _some_devices_ (wink, wink ...) when overlays are enabled. (Changed the title to more accurately reflect that.)

It may be a more fundamental problem in our rendering logic, so bumping priority back to high.

summary: - Overlays don't honor eglSwapInterval 0 (not implemented yet)
+ Overlays don't honor VSYNC
Changed in mir:
importance: Medium → High
Alberto Aguirre (albaguirre) wrote :

@Cemil,

That's the vsync rate for that device.

summary: - Overlays don't honor VSYNC
+ Overlays don't honor eglSwapInterval 0
Changed in mir:
importance: High → Medium

The unsupported combo mentioned in this bug has started manifesting itself in a new way with the introduction of BufferStream, client now repeatedly reports:

[1424295040.208033] <ERROR> MirBufferStream: Error processing incoming buffer error registering graphics buffer for client use

Daniel van Vugt (vanvugt) wrote :

Comment #4 is being discussed in bug 1441553. I've also mentioned there it's easy to reproduce with frame dropping clients.

And I think the original issue could be related to bug 1391261.

tags: added: overlays
summary: - Overlays don't honor eglSwapInterval 0
+ Android overlays don't honour eglSwapInterval 0
tags: added: performance
summary: - Android overlays don't honour eglSwapInterval 0
+ [performance] Android overlays don't honour eglSwapInterval 0
Daniel van Vugt (vanvugt) wrote :

Interesting thought --

Since r3078 this bug is probably happening constantly in CI, so our automated performance tests will be bound to 60Hz instead of the default behaviour of glmark which is unbound.

So in a way our automated performance tests are now more sensitive to this bug than anything else :/

PS Jenkins bot (ps-jenkins) wrote :

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

Changed in mir:
status: Triaged → Fix Committed
Changed in mir:
status: Fix Committed → Triaged
tags: removed: enhancement
Changed in mir:
milestone: none → 0.25.0
assignee: nobody → Kevin Dubois (kevin-dubois05)
status: Triaged → In Progress
assignee: Kevin Dubois (kevin-dubois05) → Kevin DuBois (kdub)
Mir CI Bot (mir-ci-bot) wrote :

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

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

Correction; that was just a workaround that landed (we now disable overlays if required). Still needs more work to fix properly.

Changed in mir:
milestone: 0.25.0 → none
status: Fix Committed → Triaged
Changed in mir (Ubuntu):
status: New → Triaged
importance: Undecided → Medium
Mir CI Bot (mir-ci-bot) wrote :

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

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

That was not a fix that landed. It was the revert of the workaround for this bug.

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

The Android platform was deleted from lp:mir at revision 4155.

Changed in mir:
status: Triaged → Won't Fix
Changed in mir (Ubuntu):
status: Triaged → Won't Fix
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers