GPU accelerated compositing on a multithreaded browser
AssigneeGoogle Inc.
InventorEvangelos Kokkevis
Life of this patent
Estimating the term…
Abstract
A method for an accelerated rendering of graphics on a webpage. The method comprises providing a layer tree, wherein the layer tree includes a plurality of layers and is in a sandbox environment. The method further comprises identifying a dirty layer within the layer tree, and generating rendering data and the plurality of rendering instructions for processing the dirty layer. The method further comprises storing the rendering data and the plurality of rendering instructions in a storage region outside of the sandbox environment for processing using a graphics processing unit.
Claims22
A computer-implemented method for rendering a webpage, comprising:
- generating a layer tree including a plurality of layers, wherein the plurality of layers includes a plurality of rendering objects that render web content on the webpage, and wherein the layer tree exists within a sandboxed environment;
- identifying a dirty layer within the layer tree, the dirty layer having a changed rendering object that renders content changed relative to the web content rendered on the webpage;
- generating, based on the changed rendering object, rendering data and rendering instructions that process the dirty layer;
- and
- storing the generated rendering data and the rendering instructions in a storage region accessible to components existing within the sandboxed environment and outside the sandboxed environment and accessible to a graphics processing unit (GPU), and wherein the rendering instructions are usable by the GPU to process the rendering data for display on the webpage.
A system for rendering a webpage comprising:
- a memory configured to store a layer tree including a plurality of layers, wherein the plurality of layers includes a plurality of rendering objects that render web content on the webpage, and wherein the layer tree exists within a sandboxed environment;
- a compositor configured to:
- operate in the sandboxed environment;
- identify a dirty layer within the layer tree, the dirty layer having a changed rendering object that renders content changed relative to the web content rendered on the webpage;
- generate, based on the changed rendering object, rendering data and rendering instructions that process the dirty layer;
- and
- store the generated rendering data and the rendering instructions in a storage region accessible to components within the sandboxed environment and outside the sandboxed environment and accessible to a graphics processing unit (GPU), and wherein the rendering instructions are usable by the GPU to process the rendering data for display on the webpage.
An article of manufacture including a non-transitory computer-readable medium having instructions stored thereon that, when executed by a computing device, cause the computing device to perform operations for rendering a webpage, comprising:
- generating a layer tree including a plurality of layers wherein the plurality of layers includes a plurality of rendering objects that render web content on a webpage, and wherein the layer tree exists within a sandboxed environment;
- identifying a dirty layer within the layer tree, the dirty layer having a changed rendering object that renders content changed relative to the web content rendered on the webpage;
- generating, based on the changed rendering object, rendering data and rendering instructions that process the dirty layer;
- and
- storing the generated rendering data and the rendering instructions in a storage region accessible to components existing within the sandboxed environment and outside the sandboxed environment and accessible to a graphics processing unit (GPU), and wherein the rendering instructions are usable by the GPU to process the rendering data for display on the webpage.
Dependencies are inferred from the claim text.