← Back to team overview

touch-packages team mailing list archive

[Bug 1476201] Re: Dynamic double buffering fails to detect inertial dash scrolling as slow; and stutters instead of scaling up to triple buffers.

 

I now also realize the bug isn't really about dynamic queue scaling either. The same issue happens with fixed double buffering:
   restart unity8 QML_NO_TOUCH_COMPRESSION=1 MIR_SERVER_NBUFFERS=2

The core of the problem is probably that the kernel scaling/frequency
governors clock down when not touching the screen, which is too slow for
double buffers. However if you're still touching the screen then it
remains fast enough for double buffers.

-- 
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/1476201

Title:
  Dynamic double buffering fails to detect inertial dash scrolling as
  slow; and stutters instead of scaling up to triple buffers.

Status in Mir:
  In Progress
Status in QtMir:
  Opinion
Status in mir package in Ubuntu:
  Invalid
Status in qtmir package in Ubuntu:
  Opinion

Bug description:
  Dynamic double buffering fails to detect inertial dash scrolling as
  slow; and stutters...

  [1437388267.960199] perf: Scopes: 37.69 FPS, render time 17.79ms, buffer lag 34.87ms (2 buffers)
  [1437388268.985012] perf: Scopes: 30.27 FPS, render time 25.22ms, buffer lag 40.29ms (2 buffers)
  [1437388269.993894] perf: Scopes: 31.74 FPS, render time 23.42ms, buffer lag 40.46ms (2 buffers)
  [1437388271.002470] perf: Scopes: 36.70 FPS, render time 19.13ms, buffer lag 35.59ms (2 buffers)
  [1437388272.021942] perf: Scopes: 44.16 FPS, render time 15.96ms, buffer lag 29.12ms (2 buffers)
  [1437388273.043734] perf: Scopes: 40.15 FPS, render time 17.85ms, buffer lag 31.90ms (2 buffers)

  whereas forcing triple buffers it runs more smoothly:

  [1437389981.872839] perf: Scopes: 57.71 FPS, render time 13.86ms, buffer lag 38.31ms (3 buffers)
  [1437389982.877556] perf: Scopes: 56.77 FPS, render time 15.72ms, buffer lag 37.31ms (3 buffers)
  [1437389983.887702] perf: Scopes: 57.42 FPS, render time 13.53ms, buffer lag 38.76ms (3 buffers)
  [1437389984.894372] perf: Scopes: 55.66 FPS, render time 16.02ms, buffer lag 38.12ms (3 buffers)
  [1437389985.912328] perf: Scopes: 60.96 FPS, render time 13.72ms, buffer lag 34.99ms (3 buffers)
  [1437389986.929857] perf: Scopes: 59.98 FPS, render time 14.49ms, buffer lag 35.67ms (3 buffers)

  You can see that unity8-dash is right on the edge here.

  Surprisingly the problem is not detectable if you keep your finger on
  the screen. Then the dash actually renders faster. The problem only
  seems to happen with inertial scrolling; when you fling the surface
  and lift your finger off.

To manage notifications about this bug go to:
https://bugs.launchpad.net/mir/+bug/1476201/+subscriptions