Merge lp:~vanvugt/mir/ClientLatency-of-overlays into lp:mir
Status: | Work in progress |
---|---|
Proposed branch: | lp:~vanvugt/mir/ClientLatency-of-overlays |
Merge into: | lp:mir |
Prerequisite: | lp:~vanvugt/mir/fix-ClientLatency-of-zero |
Diff against target: |
159 lines (+71/-8) 1 file modified
tests/acceptance-tests/test_latency.cpp (+71/-8) |
To merge this branch: | bzr merge lp:~vanvugt/mir/ClientLatency-of-overlays |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Mir CI Bot | continuous-integration | Needs Fixing | |
Mir development team | Pending | ||
Review via email: mp+291348@code.launchpad.net |
Commit message
Add a new ClientLatency acceptance test showing how bypass/overlays
actually make latency one frame lower.
Admittedly this is kind of the test testing itself, but it's instructive
anyway.
Description of the change
This was another one of the discoveries to come out of 'mirvanity'.
It does raise an interesting issue though -- if the latency of an
overlay triple-buffered surface is one frame, then that means there's only
one frame of pre-rendering and it doesn't have the smoothness guarantees
that triple buffering usually provides. It's actually only guaranteed the
smoothness of double-buffering (unless you allocate quad buffers).
Unmerged revisions
- 3452. By Daniel van Vugt
-
Merge latest trunk
- 3451. By Daniel van Vugt
-
No change
- 3450. By Daniel van Vugt
-
Use a struct instead of bitfield
- 3449. By Daniel van Vugt
-
Better comment
- 3448. By Daniel van Vugt
-
Enable overlay simulation. Now the test passes.
- 3447. By Daniel van Vugt
-
Add overlays test. Presently fails.
FAILED: Continuous integration, rev:3449 /mir-jenkins. ubuntu. com/job/ mir-ci/ 796/ /mir-jenkins. ubuntu. com/job/ build-mir/ 791/console /mir-jenkins. ubuntu. com/job/ build-0- fetch/828 /mir-jenkins. ubuntu. com/job/ build-1- sourcepkg/ release= vivid+overlay/ 819 /mir-jenkins. ubuntu. com/job/ build-1- sourcepkg/ release= xenial/ 819 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= amd64,compiler= clang,platform= mesa,release= vivid+overlay/ 800/console /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= amd64,compiler= gcc,platform= mesa,release= xenial/ 800 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= amd64,compiler= gcc,platform= mesa,release= xenial/ 800/artifact/ output/ *zip*/output. zip /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= cross-armhf, compiler= gcc,platform= android, release= vivid+overlay/ 800/console /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= cross-armhf, compiler= gcc,platform= android, release= vivid+overlay/ 800/artifact/ output/ *zip*/output. zip /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= i386,compiler= gcc,platform= android, release= vivid+overlay/ 800 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= i386,compiler= gcc,platform= android, release= vivid+overlay/ 800/artifact/ output/ *zip*/output. zip /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= i386,compiler= gcc,platform= mesa,release= xenial/ 800 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= i386,compiler= gcc,platform= mesa,release= xenial/ 800/artifact/ output/ *zip*/output. zip
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
FAILURE: https:/
SUCCESS: https:/
deb: https:/
FAILURE: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild: /mir-jenkins. ubuntu. com/job/ mir-ci/ 796/rebuild
https:/