Bug 279618
Summary: | [GTK][WPE][Skia] Introduce hybrid threaded CPU+GPU rendering mode | ||
---|---|---|---|
Product: | WebKit | Reporter: | Nikolas Zimmermann <zimmermann> |
Component: | WPE WebKit | Assignee: | Nikolas Zimmermann <zimmermann> |
Status: | RESOLVED FIXED | ||
Severity: | Normal | CC: | bugs-noreply |
Priority: | P2 | ||
Version: | WebKit Nightly Build | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Bug Depends on: | 279614, 279882, 279957, 280066, 280214, 280589, 280602, 280629, 280677, 281909, 282084, 283286, 283292, 288074 | ||
Bug Blocks: |
Nikolas Zimmermann
Instead of deciding once at runtime whether to use CPU or GPU rendering, dynamically decide at each paint request, based on the painted area, whether to use the CPU or GPU for rendering. At the same time, make the GPU rendering threaded, just like the CPU rendering -- record a DisplayList on the main thread, and replay it asynchronously in a worker thread.
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Nikolas Zimmermann
Pull request: https://github.com/WebKit/WebKit/pull/33582
Nikolas Zimmermann
This is the master ticket -- the actual implementation as whole can be seen in PR https://github.com/WebKit/WebKit/pull/33582 -- will split that up into smaller pieces, as discussed internally.
First step: remove SkiaAcceleratedBufferPool, replace it by BitmapTexturePool.
Nikolas Zimmermann
The PR 33582 contains a revised version of the hybrid mode based on testing various modes across devices (rpi4, imx8, desktop) -- assuring we don't regress with respect to any current default settings.
EWS
Committed 291106@main (5ce158e9149e): <https://commits.webkit.org/291106@main>
Reviewed commits have been landed. Closing PR #33582 and removing active labels.