[Webkit-unassigned] [Bug 208597] New: Canvas drawing commands have to be flushed to the GPUProcess in batches

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Mar 4 13:40:00 PST 2020


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

            Bug ID: 208597
           Summary: Canvas drawing commands have to be flushed to the
                    GPUProcess in batches
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: Canvas
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: sabouhallawa at apple.com
                CC: dino at apple.com

For GPU canvas rendering, the drawing commands are recorded in a DisplayList. These drawing commands are flushed out to the backend in the GPUProcess only when the backend pixels are needed. Delaying the flushing makes us lose the parallelization that CoreGraphics does when the drawing commands are issued directly to the GraphicsContext.

Flushing the drawing commands earlier makes the commit time to get the pixels updated shorter. But a tradeoff has to be made between sending many messages and delaying the flushing. So we need to send the drawing commands to the GPU Process in "batches". The goal is to make CoreGraphics starts its work earlier but not to encode, decode and send many messages.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20200304/9de86ac7/attachment.htm>


More information about the webkit-unassigned mailing list