Closed Bug 1724678 Opened 3 years ago Closed 3 years ago

Large performance regression on Adreno 330

Categories

(Core :: Graphics: WebRender, defect)

ARM
Android
defect

Tracking

()

RESOLVED FIXED
93 Branch
Tracking Status
firefox-esr78 --- unaffected
firefox-esr91 --- unaffected
firefox91 --- unaffected
firefox92 --- fixed
firefox93 --- fixed

People

(Reporter: h.winnemoeller, Assigned: jnicol)

References

(Blocks 1 open bug, Regression)

Details

(Keywords: regression)

Steps to reproduce

  1. Open any website.
  2. Scroll down to ensure that all shaders are compiled and website has finished loading everything.
  3. Scroll to the very top, begin profile capture and slowly scroll down.

Expected result
Website scrolls smoothly.

Actual result
Jank is experienced during every scrolling action. Also, scrolling is smooth on the OpenGL compositor on the profiled websites.

Profile
https://share.firefox.dev/3CuFhfd on https://news.ycombinator.com/
https://share.firefox.dev/2VCitZZ on https://developer.mozilla.org/en-US/plus

Old profile before issue
https://share.firefox.dev/3frkmAh on https://developer.mozilla.org/en-US/plus from Bug 1713189

Device Info
Vendor and Model: Sony Xperia Z2
OS version: Android 6.0.1
GPU model: Adreno 330 (WebRender Compositing)
Number of cores: 4 (Snapdragon 801)

Fenix version
92.0a1 (Build #2015826889)
AC: 92.0.20210808143127, 41548c2f59
GV: 92.0a1-20210808090543
AS: 81.0.1
2021-08-08T17:38:06.475865

The issue appeared at the same time of Bug 1724298, therefore a regression between GV 20210802093840 and 20210804093931

This is a regression from bug 1720169, which I'm going to back out.

It attempts to use larger buffers for vertex data for multiple draw calls, which should reduce the allocation overheads in the driver. Unfortunately constantly mapping and unmapping the buffers is slow on this device and some others. I wanted to work around that by using persistently mapped buffers, but unfortunately they are not supported on Adreno 3xx (and are buggy on 4xx and some 5xx). So it's back to the drawing board.

Regressed by: 1720169
Has Regression Range: --- → yes
Assignee: nobody → jnicol
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 93 Branch
You need to log in before you can comment on or make changes to this bug.