New issue
Advanced search Search tips

Issue 661741 link

Starred by 2 users

Issue metadata

Status: WontFix
Owner:
Closed: Feb 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 3
Type: Feature



Sign in to add a comment

Promote scrollers to layers on demand

Project Member Reported by majidvp@chromium.org, Nov 2 2016

Issue description

Currently we create composited scrolling layers whenever it is possible to do so. This can be problematic for low-end devices where having many layers can become a costly bottleneck [1] (e.g., by making tree sync more costly to do). 


We should consider investigating ways to reduce the layer count. A simple way to do this is to look into heuristic where we promote scrollable areas on demand, here are a few simple options:

1. Promote scrollable areas when there is a potential input than can create a scroll gesture.

2. Promote scrollables areas only within visible viewport (perhaps with a buffer). 


** This is based on casual observation of few sites (e.g., pinterest.com) on lower end chrome OS devices. Perhaps our first step should be to come up with a way to estimate how big an impact such optimizations could have. Any ideas? 
 
Project Member

Comment 1 by bugdroid1@chromium.org, Jan 2 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/61be4cf0015eb2c0fb50cd58de61939423eab618

commit 61be4cf0015eb2c0fb50cd58de61939423eab618
Author: majidvp <majidvp@chromium.org>
Date: Mon Jan 02 18:44:30 2017

UMA metric for LayerUpdateTimes

We are interested to learn about correlation between number of layers
and the cost of LayerUpdateTimes in actual sites to guide
some optimization efforts.

To do this, we collect stats on LayersUpdateTime but bucket that into
several suffixed histograms to be able to relate it to number of
layers.

BUG= 661741 

Review-Url: https://codereview.chromium.org/2484743002
Cr-Commit-Position: refs/heads/master@{#441076}

[modify] https://crrev.com/61be4cf0015eb2c0fb50cd58de61939423eab618/cc/trees/layer_tree.cc
[modify] https://crrev.com/61be4cf0015eb2c0fb50cd58de61939423eab618/cc/trees/layer_tree.h
[modify] https://crrev.com/61be4cf0015eb2c0fb50cd58de61939423eab618/cc/trees/layer_tree_host_in_process.cc
[modify] https://crrev.com/61be4cf0015eb2c0fb50cd58de61939423eab618/tools/metrics/histograms/histograms.xml

Project Member

Comment 2 by bugdroid1@chromium.org, Jan 11 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/33b63eb41f344fd42b6e1c62e06459c3543f4102

commit 33b63eb41f344fd42b6e1c62e06459c3543f4102
Author: majidvp <majidvp@chromium.org>
Date: Wed Jan 11 22:56:17 2017

Fix separator in histograms.xml for LayersUpdateTime metric

The separator is actually a dot.

BUG= 661741 

Review-Url: https://codereview.chromium.org/2620353002
Cr-Commit-Position: refs/heads/master@{#443036}

[modify] https://crrev.com/33b63eb41f344fd42b6e1c62e06459c3543f4102/tools/metrics/histograms/histograms.xml

Project Member

Comment 3 by sheriffbot@chromium.org, Feb 21 2018

Labels: Hotlist-Recharge-Cold
Status: Untriaged (was: Available)
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue.

Sorry for the inconvenience if the bug really should have been left as Available. If you change it back, also remove the "Hotlist-Recharge-Cold" label.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Status: WontFix (was: Untriaged)
The most likely solution to this is raster-inducing scrolling which allows us
to scroll non-composited elements on impl thread without incurring costs
associated with composited layers.

That is being tracked by issue 715106

I am going to close this one now. 

Sign in to add a comment