Investigate performance problems for 'SVG Suite > SVG bouncing PNG images' benchmark |
|||||
Issue descriptionAll benchmarks are under pr.gg/animometer/developer.html - Set "Ramp" mode for benchmarking. - Set "Keep at a fixed complexity" for profiling. Set an appropriate [high] complexity next to each test's name. File any performance bugs found as blocking this issue.
,
May 20 2016
Will profile today.
,
May 24 2016
Scores on Nexus 7 2nd Gen - Maintain 50fps: SW - 7.18 GPU - 60.6 It looks like there are two bottlenecks here: Main thread takes a while, and the actual raster task time takes a while. GPU thread has a fair amount of gaps and looks like it isn't the bottleneck. As far as raster task time, we take around 5ms to draw ~50 images - about half the time is taken recording the commands to a picture, and half the time is taken playing back the picture via MultiPictureDraw. This seems a bit long for both steps, especially just recording a picture... not sure if this can be optimized. Need to investigate main thread further. - attaching a trace.
,
May 24 2016
On desktop (15" MBP 2013) we are GPU bound - it's interesting that we can only draw ~180 of the same image in a frame - there are probably opportunities to detect that the same image is being drawn multiple times and batch these into a single draw command?
,
May 24 2016
Interestingly, on desktop, the "canvas bouncing png images" test, which produces a nearly identical effect, scores 5x better, so we're somehow generating much nicer GPU work. looping in bsalomon in case he has some ideas on why this might be the case.
,
May 25 2016
Not sure, but I'll try to grab a SKP tomorrow.
,
Jun 9 2016
There's a fairly large overhead in ref churn during the draw image (dealing with the image decode controller). I'm working on a fix that should eliminate the churn by doing some of the ref up front for the duration of the raster.
,
Sep 28 2016
vmpstr@, did you end up landing the CL mentioned in #7?
,
Apr 16 2018
obsolete at this point. |
|||||
►
Sign in to add a comment |
|||||
Comment 1 by dk...@chromium.org
, May 20 2016