touch-packages team mailing list archive
-
touch-packages team
-
Mailing list archive
-
Message #102267
[Bug 1488386] Re: [performance] Double buffering is only smooth while you're touching it
Three things I have found that solve the stuttering from premature CPU
scaling on Android:
* Don't use nesting. Having a single server architecture seems to keep it smooth.
* Don't use double buffering (bug 1240909). Staying busy pre-rendering that third buffer keeps clocks higher and smoother.
* Just wastefully spin a CPU core. Annoyingly, wasting power makes graphics visibly smoother.
Hopefully we can find more options.
--
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/1488386
Title:
[performance] Double buffering is only smooth while you're touching it
Status in Mir:
New
Status in QtMir:
New
Status in mir package in Ubuntu:
New
Status in qtmir package in Ubuntu:
New
Bug description:
On some devices (mako at least) it's possible to force double
buffering and it will often keep up:
restart unity8 QML_NO_TOUCH_COMPRESSION=1 MIR_SERVER_NBUFFERS=2
Curiously however it only keeps up smoothly (eg. during a dash scroll)
while you're touching the screen. If you lift off or fling the dash
then it immediately stutters, quite badly.
So the issue is not that the device can't keep up with double buffering. It seems more like we're not keeping the kernel sufficiently awake and it's clocking down prematurely, as soon as we're not touching it. Certainly adjusting the variables in:
/sys/devices/system/cpu/cpu0/cpufreq
it is possible to raise the performance and minimum frequency to make double buffering smooth.
The challenge of this bug is to find a way in Mir/QtMir to keep the
kernel more awake so it doesn't clock down when we need smooth
animations and we're not touching the screen.
To manage notifications about this bug go to:
https://bugs.launchpad.net/mir/+bug/1488386/+subscriptions