Project: skia Issues People Development process History Sign in
New issue
Advanced search Search tips
Issue 1333 Performance difference in drawlooper with multiple blurs
Starred by 5 users Reported by robertphillips@chromium.org, Jun 5 2013 Back to list
Status: Accepted
Owner:
Area: ----
Priority: Medium
Type: Defect



Sign in to add a comment
It appears that the lower-level drawRect methods are not appropriately rejecting clipped rect draws in some cases. In particular the new raster-side fast path for drawing blurred rects doesn't perform a cull step.
This bug manifests itself as a performance difference in drawing a rect with multiple blurs either as 1 4-deep draw looper vs. 4 1-deep draw loopers (with the 1 4-deep case being slower than expected). 
This can be reproduced in Skia by modifying the kWidth and kHeight constants in the megalooper GM to be 2000x2000. The generate the .skps via:
gm -p <out-dir> --match megalooper
This will generate 3 skp files (megalooper_[0x0 | 4x1 | 1x4]). Next run bench_pictures on the resulting .skps to see the performance variation.
This CL (Added megalooper GM - https://codereview.chromium.org/16004011/) has some timings on Win7. 
This CL ("Fix" for megalooper "bug" - https://codereview.chromium.org/16325008/) has a preliminary fix.  It has been paused in favor of fixing the problem at a lower level.
 
Project Member Comment 1 by scro...@google.com, Jun 5 2013
Cc: scro...@google.com
Owner: robertph...@google.com
Robert, okay if I assign this to you?
Project Member Comment 2 by robertph...@google.com, Aug 16 2013
Status: Accepted
Project Member Comment 3 by hcm@google.com, Dec 7 2015
Labels: Hotlist-Fixit
Project Member Comment 4 by scro...@google.com, Jun 9
Cc: -scro...@google.com
Sign in to add a comment