Methods and apparatuses for providing a hardware accelerated web engine
First Claim
Patent Images
1. A method for hardware accelerating a web browser on a computer system, the method comprising:
- analyzing, by the web browser, a data stream having a plurality of fragments, the data stream being processed by the web browser;
determining, by the web browser, what fragments of the data stream should be rendered for storage into separate backing stores for a graphics processing unit;
rendering, by the web browser, the fragments into raster images;
causing the storage of the raster images in the backing stores for the graphics processing unit, wherein the web browser provides information identifying the raster images to the graphics processing unit; and
compositing the raster images, which each represent a decomposed portion of a complete image, into a complete image displayed as a web page in order to hardware accelerate the operation of the web browser.
3 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatuses for providing hardware acceleration of a web browser are disclosed. In one embodiment, a method of operating a web browser on a computer system includes analyzing a data stream having a plurality of fragments. The method further includes determining what fragments of the data stream should be rendered for storage into separate backing stores. The method further includes rendering the fragments into raster images intended for hardware acceleration. The method further includes storing the raster images in the backing stores located in a graphics processing unit.
57 Citations
32 Claims
-
1. A method for hardware accelerating a web browser on a computer system, the method comprising:
-
analyzing, by the web browser, a data stream having a plurality of fragments, the data stream being processed by the web browser; determining, by the web browser, what fragments of the data stream should be rendered for storage into separate backing stores for a graphics processing unit; rendering, by the web browser, the fragments into raster images; causing the storage of the raster images in the backing stores for the graphics processing unit, wherein the web browser provides information identifying the raster images to the graphics processing unit; and compositing the raster images, which each represent a decomposed portion of a complete image, into a complete image displayed as a web page in order to hardware accelerate the operation of the web browser. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A machine-readable non-transitory medium having executable instructions to cause a machine to perform a method comprising:
-
analyzing, by a web browser of the machine, a data stream having a plurality of fragments, the data stream being processed by the web browser; determining, by the web browser, what fragments of the data stream should be rendered for storage into separate backing stores for a graphics processing unit; rendering, by the web browser, the fragments into raster images; causing the storage of the raster images in the backing stores for the graphics processing unit, wherein the web browser provides information identifying the raster images to the graphics processing unit; and compositing the raster images, which each represent a decomposed portion of a complete image, into a complete image displayed as a web page in order to hardware accelerate the operation of the web browser.
-
-
11. A method for hardware accelerating a web browser on a computer system, the method comprising:
-
constructing a first data structure by grouping elements of a web page into a first plurality of nodes; determining, by the web browser, what elements should be rendered for storage into separate backing stores; constructing a second data structure separate from the first data structure, the second data structure comprises a second plurality of nodes each representing an independent layer associated with a raster image intended for hardware acceleration; rendering, by the web browser, all nodes of the first data structure to create raster images, which each represent a decomposed portion of a complete image, stored in the backing stores for a graphics processing unit (GPU); and compositing the raster images stored in the backing stores to construct a first final image displayed as a web page in order to hardware accelerate the operation of the web browser. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A machine-readable non-transitory medium having executable instructions to cause a machine to perform a method comprising:
-
constructing a first data structure by grouping elements of a web page into a first plurality of nodes; determining, by a web browser of the machine, what elements should be rendered for storage into separate backing stores; constructing a second data structure separate from the first data structure, the second data structure comprises a second plurality of nodes each representing an independent layer associated with a raster image intended for hardware acceleration; rendering, by the web browser, all nodes of the first data structure to create raster images, which each represent a decomposed portion of a complete image, stored in the backing stores for a graphics processing unit (GPU); and compositing the raster images stored in the backing stores to construct a first final image displayed as a web page in order to hardware accelerate the operation of the web browser. - View Dependent Claims (24, 25)
-
-
26. A data processing system, comprising:
-
a first microprocessor coupled to a bus; main memory coupled to the bus with the main memory configured to store a data structure representing a render tree having nodes for grouping elements of a web page; and a graphics processing unit coupled to the bus, the graphics processing unit having a second microprocessor and a plurality of backing stores with each backing store configured to store raster images associated with nodes of the render tree, wherein the first microprocessor executes a web browser application to determine what elements should be rendered for storage into the plurality of backing stores and to render the fragments into raster images, wherein the web browser provides information identifying the raster images to the graphics processing unit, and wherein the second microprocessor to execute a graphics application to composite the raster images, which each represent a decomposed portion of a complete image, into a complete image displayed as a web page in order to hardware accelerate the operation of the web browser. - View Dependent Claims (27, 28)
-
-
29. A method of operating a web browser software application on a computer system, the method comprising:
-
analyzing, by the web browser software application, a data stream having a plurality of fragments, the data stream being encoded in a markup language; determining, by the web browser software application, what fragments of the data stream should be rendered for storage into separate backing stores; rendering, by the web browser software application, the fragments into raster images, which each represent a decomposed portion of a complete image; causing the storage of the raster images in the backing stores for a graphics processing unit, wherein the web browser software application provides information identifying the raster images to the graphics processing unit; and compositing the raster images into a complete image in order to hardware accelerate the operation of the web browser software application. - View Dependent Claims (30, 31)
-
-
32. A machine-readable non-transitory medium having executable instructions to cause a machine to perform a method comprising:
-
analyzing, by a web browser software application of the machine, a data stream having a plurality of fragments, the data stream being encoded in a markup language; determining, by the web browser software application, what fragments of the data stream should be rendered for storage into separate backing stores; rendering, by the web browser software application, the fragments into raster images, which each represent a decomposed portion of a complete image; causing the storage of the raster images in the backing stores for a graphics processing unit, wherein the web browser software application provides information identifying the raster images to the graphics processing unit; and compositing the raster images into a complete image in order to hardware accelerate the operation of the web browser software application.
-
Specification