I ran the browser with QSG_RENDER_TIMING=1, and I see timings like this:

qt.scenegraph.time.renderloop: Frame rendered with 'threaded' renderloop in 
30ms, sync=0, render=2, swap=28 - (on render thread)
qt.scenegraph.time.renderloop: Frame prepared with 'threaded' renderloop, 
polish=0, lock=0, blockedForSync=14, animations=0 - (on Gui thread) 
BrowserWindow_QMLTYPE_1_QML_207(0xab14ee20)
qt.scenegraph.time.renderer: time in renderer: total=1ms, preprocess=0, 
updates=0, binding=0, rendering=1
qt.scenegraph.time.renderloop: Frame rendered with 'threaded' renderloop in 
39ms, sync=0, render=1, swap=37 - (on render thread)
qt.scenegraph.time.renderloop: Frame prepared with 'threaded' renderloop, 
polish=0, lock=0, blockedForSync=27, animations=0 - (on Gui thread) 
BrowserWindow_QMLTYPE_1_QML_207(0xab14ee20)
qt.scenegraph.time.renderer: time in renderer: total=1ms, preprocess=0, 
updates=0, binding=0, rendering=1
qt.scenegraph.time.renderloop: Frame rendered with 'threaded' renderloop in 
39ms, sync=0, render=1, swap=37 - (on render thread)
qt.scenegraph.time.renderloop: Frame prepared with 'threaded' renderloop, 
polish=0, lock=0, blockedForSync=25, animations=0 - (on Gui thread) 
BrowserWindow_QMLTYPE_1_QML_207(0xab14ee20)
qt.scenegraph.time.renderer: time in renderer: total=4ms, preprocess=0, 
updates=0, binding=2, rendering=1
qt.scenegraph.time.renderloop: Frame rendered with 'threaded' renderloop in 
39ms, sync=0, render=5, swap=34 - (on render thread)
qt.scenegraph.time.renderloop: Frame prepared with 'threaded' renderloop, 
polish=0, lock=0, blockedForSync=26, animations=0 - (on Gui thread) 
BrowserWindow_QMLTYPE_1_QML_207(0xab14ee20)
qt.scenegraph.time.renderer: time in renderer: total=1ms, preprocess=0, 
updates=0, binding=0, rendering=1
qt.scenegraph.time.renderloop: Frame rendered with 'threaded' renderloop in 
40ms, sync=0, render=1, swap=38 - (on render thread)
qt.scenegraph.time.renderloop: Frame prepared with 'threaded' renderloop, 
polish=0, lock=0, blockedForSync=29, animations=0 - (on Gui thread) 
BrowserWindow_QMLTYPE_1_QML_207(0xab14ee20)
qt.scenegraph.time.renderer: time in renderer: total=3ms, preprocess=0, 
updates=0, binding=0, rendering=3
qt.scenegraph.time.renderloop: Frame rendered with 'threaded' renderloop in 
27ms, sync=2, render=4, swap=21 - (on render thread)
qt.scenegraph.time.renderloop: Frame prepared with 'threaded' renderloop, 
polish=0, lock=0, blockedForSync=10, animations=0 - (on Gui thread) 
BrowserWindow_QMLTYPE_1_QML_207(0xab14ee20)
qt.scenegraph.time.renderer: time in renderer: total=1ms, preprocess=0, 
updates=0, binding=0, rendering=1
qt.scenegraph.time.renderloop: Frame rendered with 'threaded' renderloop in 
25ms, sync=0, render=2, swap=22 - (on render thread)
qt.scenegraph.time.renderloop: Frame prepared with 'threaded' renderloop, 
polish=0, lock=0, blockedForSync=10, animations=0 - (on Gui thread) 
BrowserWindow_QMLTYPE_1_QML_207(0xab14ee20)
qt.scenegraph.time.renderer: time in renderer: total=1ms, preprocess=0, 
updates=0, binding=0, rendering=1
qt.scenegraph.time.renderloop: Frame rendered with 'threaded' renderloop in 
34ms, sync=0, render=1, swap=32 - (on render thread)
qt.scenegraph.time.renderloop: Frame prepared with 'threaded' renderloop, 
polish=0, lock=0, blockedForSync=19, animations=0 - (on Gui thread) 
BrowserWindow_QMLTYPE_1_QML_207(0xab14ee20)
qt.scenegraph.time.renderer: time in renderer: total=4ms, preprocess=0, 
updates=0, binding=0, rendering=4
qt.scenegraph.time.renderloop: Frame rendered with 'threaded' renderloop in 
32ms, sync=0, render=5, swap=27 - (on render thread)
qt.scenegraph.time.renderer: time in renderer: total=1ms, preprocess=0, 
updates=0, binding=0, rendering=1
qt.scenegraph.time.renderloop: Frame prepared with 'threaded' renderloop, 
polish=0, lock=0, blockedForSync=19, animations=0 - (on Gui thread) 
BrowserWindow_QMLTYPE_1_QML_207(0xab14ee20)
qt.scenegraph.time.renderloop: Frame rendered with 'threaded' renderloop in 
27ms, sync=0, render=1, swap=25 - (on render thread)
qt.scenegraph.time.renderloop: Frame prepared with 'threaded' renderloop, 
polish=0, lock=0, blockedForSync=12, animations=0 - (on Gui thread) 
BrowserWindow_QMLTYPE_1_QML_207(0xab14ee20)
qt.scenegraph.time.renderer: time in renderer: total=2ms, preprocess=0, 
updates=0, binding=0, rendering=2
qt.scenegraph.time.renderloop: Frame rendered with 'threaded' renderloop in 
25ms, sync=0, render=3, swap=22 - (on render thread)

It looks like the main thread blocks regularly (see the blockedForSync
timings), confirming my suspicion in comment 8. This is probably because
the render thread is blocked in eglSwapBuffers (often for more than
16ms), and the main thread is the one that initiates a sync by posting a
task to the render thread and then waiting for it to complete.

I think I'm convinced the main issues here aren't Oxide bugs.

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to webbrowser-app in Ubuntu.
https://bugs.launchpad.net/bugs/1550371

Title:
  Webbrowser slow scroll and artifact rendering on freiza

Status in Canonical System Image:
  Confirmed
Status in Oxide:
  Invalid
Status in webbrowser-app package in Ubuntu:
  Invalid

Bug description:
  Copied from private avila bug: 
https://bugs.launchpad.net/avila-private/+bug/1547569
  STEPS:
  1. Install the latest image
  2. Open the browser
  3. Goto ubuntu.com
  4. Wait for the page to load
  5. Scroll the page

  EXPECT
  Smooth scrolling and rendering as seen on arale and krillin

  ACTUAL:
  Very slow render time on most site with a lot of content
  Scrolling is glitchy and seems to want to fresh render each page as it is 
scrolled

  This is most prominently seen on ubuntu.com but also ebay and amazon
  webapps.

  Webbrowser seems to display the issue the most although I beleive it
  is more likely to be the graphics stack somewhere, tvoss believe that
  perfservice will hopefully solve the issue.

To manage notifications about this bug go to:
https://bugs.launchpad.net/canonical-devices-system-image/+bug/1550371/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to