Changes between Version 48 and Version 49 of CoordinatedGraphicsSystem


Ignore:
Timestamp:
Mar 1, 2019 1:34:13 AM (5 years ago)
Author:
Fujii Hironori
Comment:

Coordinated Compositing

Legend:

Unmodified
Added
Removed
Modified
  • CoordinatedGraphicsSystem

    v48 v49  
    22
    33Historically, the coordinated graphics architecture had two variants.
    4 One was multi-process mode, which was used by Qt port and EFL port, and has been removed in [212608].
    5 Another is threaded mode which is used by GTK port and WPE port.
     4One was multi-process model, which was used by Qt port and EFL port, and has been removed in [212608].
     5Another is threaded model which is used by GTK port and WPE port.
    66This wiki page describes both architectures.
    77
     
    103103[[BR]]
    104104== [#=CoordinatedCompositing Coordinated Compositing] ==
    105 Coordinated compositing, guarded by USE(COORDINATED_GRAPHICS_MULTIPROCESS), was a WebKit2 implementation of accelerated compositing. It synchronizes the layer tree provided by WebCore in the web process with a proxied layer tree in the UI process that is responsible for the actual GPU rendering to the screen.
     105
     106Coordinated compositing is executed in the compositing thread of web process in case of threaded model, and in UI process in case of multi-process model.
     107This section describes multi-process model.
     108
     109Coordinated compositing of multi-process model is a WebKit2 implementation of accelerated compositing. It synchronizes the layer tree provided by WebCore in the web process with a proxied layer tree in the UI process that is responsible for the actual GPU rendering to the screen.
    106110
    107111The coordinated compositing code might be a bit tricky to read, because of its asynchronous nature on top of the WebKit2 IPC mechanism.