Bug 218614 - [Concurrent display lists] Support playback of display list items with cached resources
Summary: [Concurrent display lists] Support playback of display list items with cached...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit2 (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Wenson Hsieh
URL:
Keywords: InRadar
Depends on: 218426 218649 219067 219652 219657
Blocks:
  Show dependency treegraph
 
Reported: 2020-11-05 07:49 PST by Wenson Hsieh
Modified: 2020-12-09 12:53 PST (History)
5 users (show)

See Also:


Attachments
WIP (26.69 KB, patch)
2020-11-05 07:52 PST, Wenson Hsieh
no flags Details | Formatted Diff | Diff
Patch (10.68 KB, patch)
2020-12-08 17:10 PST, Wenson Hsieh
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Wenson Hsieh 2020-11-05 07:49:16 PST
e.g. DrawGlyphs, DrawImage, etc.
Comment 1 Wenson Hsieh 2020-11-05 07:52:15 PST
Created attachment 413296 [details]
WIP
Comment 2 Radar WebKit Bug Importer 2020-11-12 07:50:16 PST
<rdar://problem/71326662>
Comment 3 Wenson Hsieh 2020-12-08 14:27:27 PST
This blocks making daringfireball.net work, with both canvas + DOM GPUP features enabled.
Comment 4 Wenson Hsieh 2020-12-08 17:10:59 PST
Created attachment 415692 [details]
Patch
Comment 5 EWS 2020-12-09 11:50:36 PST
Committed r270591: <https://trac.webkit.org/changeset/270591>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 415692 [details].
Comment 6 Geoffrey Garen 2020-12-09 11:51:16 PST
It feels kind of complicated for WebContent to send commands and resources out of order, and then rely on GPU Process to stitch them back into order. I wonder if there's a way to ensure that commands always arrive in order with their resources.
Comment 7 Wenson Hsieh 2020-12-09 11:57:19 PST
(In reply to Geoffrey Garen from comment #6)
> It feels kind of complicated for WebContent to send commands and resources
> out of order, and then rely on GPU Process to stitch them back into order. I
> wonder if there's a way to ensure that commands always arrive in order with
> their resources.

Yeah, I think that we should eventually implement caching for native images and image buffers through display list items (like Ryosuke is doing with fonts in https://bugs.webkit.org/show_bug.cgi?id=219672).

I think the underlying mechanism that I introduced to fix this will be generally useful though, for generally synchronizing with other IPC messages.
Comment 8 Ryosuke Niwa 2020-12-09 12:53:15 PST
(In reply to Wenson Hsieh from comment #7)
> (In reply to Geoffrey Garen from comment #6)
> > It feels kind of complicated for WebContent to send commands and resources
> > out of order, and then rely on GPU Process to stitch them back into order. I
> > wonder if there's a way to ensure that commands always arrive in order with
> > their resources.
> 
> Yeah, I think that we should eventually implement caching for native images
> and image buffers through display list items (like Ryosuke is doing with
> fonts in https://bugs.webkit.org/show_bug.cgi?id=219672).

We need some mechanism to map shared memory from display list if we're going on that route.