New issue
Advanced search Search tips

Issue 821439 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner:
Closed: Mar 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug-Regression



Sign in to add a comment

10% regression in system_health.memory_mobile at 541565:541681

Project Member Reported by hjd@google.com, Mar 13 2018

Issue description

See the link to graphs below.
 
Project Member

Comment 1 by 42576172...@developer.gserviceaccount.com, Mar 13 2018

All graphs for this bug:
  https://chromeperf.appspot.com/group_report?bug_id=821439

(For debugging:) Original alerts at time of bug-filing:
  https://chromeperf.appspot.com/group_report?sid=c88fb64fb972544be4b0fe52f029e5880cd7a951671d5a3a8eeccc15fa8c7aa3


Bot(s) for this bug's original alert(s):

android-nexus6
Project Member

Comment 3 by 42576172...@developer.gserviceaccount.com, Mar 13 2018

Cc: bokan@chromium.org chrishtr@chromium.org skobes@chromium.org
Owner: bokan@chromium.org
Status: Assigned (was: Untriaged)
📍 Found a significant difference after 1 commit.
https://pinpoint-dot-chromeperf.appspot.com/job/16bf058e440000

Prevent compositing empty-sized iframes by bokan@chromium.org
https://chromium.googlesource.com/chromium/src/+/50d82505c50363ec5ab003fdbbf9d2f706114ac2

Understanding performance regressions:
  http://g.co/ChromePerformanceRegressions

Comment 4 by bokan@chromium.org, Mar 13 2018

 Issue 821398  has been merged into this issue.

Comment 5 by bokan@chromium.org, Mar 13 2018

 Issue 821442  has been merged into this issue.

Comment 6 by bokan@chromium.org, Mar 14 2018

 Issue 821783  has been merged into this issue.

Comment 7 by bokan@chromium.org, Mar 14 2018

 Issue 821798  has been merged into this issue.

Comment 8 by bokan@chromium.org, Mar 14 2018

Components: Blink>Scroll
Labels: -Pri-2 Pri-1
Status: Started (was: Assigned)

Comment 9 by bokan@chromium.org, Mar 15 2018

 Issue 821797  has been merged into this issue.

Comment 10 by bokan@chromium.org, Mar 15 2018

Update: finally managed to get a local repro - Android version is decisive: repros on L but not on my N device.

tl;dr - I think this is WontFix. The "regression" is really a "back to normal" before we enabled RLS (also, more recent Android versions seem to optimize this out). Explanation:

Before we enabled RLS, an empty iframe would not be considered scrollable so we wouldn't composite it. When we turned on RLS, we had a bug (fixed in  issue 811438 ) where these empty iframes suddenly became considered scrollable - causing them to composite. Fixing the bug means we went back to not compositing these empty iframes. The regression is counter-intuitive though - we avoid compositing an iframe and our GPU memory usage goes up. In the regressed story (spychase), we have a DOM tree that looks roughly like:

HTML 412x603 (composited)
  CANVAS 402x603
  DIV 402x603 (composited)
    IFRAME(A) 320x100
      IFRAME(B) 0x0

In this arrangement, the iframe A isn't composited so it gets rastered into it's containing layer which is the DIV of size 402x603. Before my "fix", iframe B would be composited by accident which causes A to require compositing so it rasters into its own layer of size 320x100, smaller than the layer in the previous scenario. As far as I can tell, the DIV doesn't paint anything of its own so compositing the iframe causes us to allocate a larger GPU buffer.

chrishtr@: Is this a known issue? Assuming I got this right, perhaps there's an opportunity to optimize for memory here by rastering into the smallest possible layer? Anyway, given that this takes us back to pre-RLS levels, can I WontFix this?

Comment 11 by bokan@chromium.org, Mar 21 2018

ping, chrishtr@, WDYT?
Status: WontFix (was: Started)
Sorry for the delay.

If DIV doesn't paint anything, then the reason more memory is used is
that previously DIV's cc::Layer used a solid color optimization, which saves
a lot of memory.

I agree that this is WontFix. This kind of situation happens often, and is
not really possible to optimize around.

Comment 13 by bokan@chromium.org, Mar 26 2018

Issue 821434 has been merged into this issue.

Comment 14 by bokan@chromium.org, Mar 28 2018

Issue 821436 has been merged into this issue.
Issue 821433 has been merged into this issue.
Issue 821432 has been merged into this issue.

Sign in to add a comment