[Webkit-unassigned] [Bug 107804] New: [mac] ImageBuffer should create accelerated buffers for small canvases, but we shouldn't force them to create compositing layers

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Jan 24 01:43:56 PST 2013


https://bugs.webkit.org/show_bug.cgi?id=107804

           Summary: [mac] ImageBuffer should create accelerated buffers
                    for small canvases, but we shouldn't force them to
                    create compositing layers
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: Unspecified
        OS/Version: Unspecified
            Status: NEW
          Keywords: InRadar
          Severity: Normal
          Priority: P2
         Component: Canvas
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: timothy_horton at apple.com
                CC: sam at webkit.org, simon.fraser at apple.com


<rdar://problem/11752381>

Mac WebKit is slower than it needs to be on http://www.mikechambers.com/html5/javascript/QuadTree/examples/collision.html because it makes lots of tiny canvases and draws them into a big one. The tiny ones fall below ImageBufferCG's "minIOSurfaceSize", so they are created in main memory. The big one is big, so it's an IOSurface. Painting between these is incredibly slow.

The reason we cap ImageBuffer acceleration by size is so that small canvases (for example, http://typeface.neocracy.org/examples.html) don't force compositing (and then potentially cause overlap, and huge memory cost). But, we can still make IOSurfaces and still not pop them into compositing layers. So, let's do that!

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list