When some pixels are to be presented to the compositor, if they haven't been allocated specifically for this (through a TextureClient), they need to be copied into a TextureClient. This is a wast of CPU and memory. In the case of ImageLayers the typical symptom for running into this case is going through this branch: http://dxr.mozilla.org/mozilla-central/source/gfx/layers/client/ImageClient.cpp?from=ImageClient.cpp#293 We also do a full copy of every frame produced by non-SurfaceStream canvas2D. (see http://dxr.mozilla.org/mozilla-central/source/gfx/layers/CopyableCanvasLayer.cpp )
The ImageLayer cases aren't happening a lot thanks to CairoImage already using TextureClient internally. Could make a difference on pages where we use RasterImage a lot (which doesn't use TextureClient, so is getting copied every time it is created or updated).
Severity: normal → minor
Status: NEW → RESOLVED
Last Resolved: a year ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.