Open
Bug 1888096
(blob-layerization)
Opened 1 year ago
Updated 1 year ago
[meta] [project] Improve the blob layerization algorithm
Categories
(Core :: Graphics: WebRender, enhancement)
Core
Graphics: WebRender
Tracking
()
NEW
People
(Reporter: nical, Unassigned)
References
(Depends on 2 open bugs, Blocks 3 open bugs)
Details
(Keywords: meta)
The current blob layerization algorithm has some very bad performance cliffs. It has to strike a balance between favoring webrender display items over using software rasterization, and avoiding to allocate too many layers.
We get into trouble when the algorithm ends up allocating many layers because:
- it can require an unbounded amount of memory to be allocated (For example bug 1743190)
- it causes heavy jank during texture upload
A better layerization algorithm would:
- Take item overlap into account to decide whether to add to an existing layer or create a new one. It could use something similar to webrender's batching algorithm to achieve that.
- Take into consideration whether using webrender display items would cause extra overlapping layers and weight that against the cost of rasterizing the display item via the software fallback (its area).
- Enforce an upper bound on the total number of layers
Updated•1 year ago
|
Summary: [meta][project] Improve the blob layerization algorithm → [meta] [project] Improve the blob layerization algorithm
Updated•1 year ago
|
Rank: 3
Updated•1 year ago
|
Severity: -- → S3
You need to log in
before you can comment on or make changes to this bug.
Description
•