Hardware accelerated rendering seems to be a new web browser trend, as developers of all major browsers have confirmed that their browsers will support it in one form or the other in the future.
The latest announcement in this regard came from the Chromium team just two days ago.
Google worked on implementing hardware acceleration in Chromium for some time and the announcement acts as a primer to summarize those efforts.
The underlying infrastructure consists of a new gpu process which "accepts graphics commands from the renderer process and pushes them to OpenGL or Direct3D".
The gpu process sandbox had to be modified to allow the renderer process to access those graphics apis.
With this basic piece of infrastructure, we’ve started accelerating some content in Chromium. A web page can naturally be divided into a number of more or less independent layers. Layers can contain text styled with CSS, images, videos, and WebGL or 2D canvases. Currently, most of the common layer contents, including text and images, are still rendered on the CPU and are simply handed off to the compositor for the final display. Other layers use the GPU to accelerate needed operations that touch a lot of pixels. Video layers, for example, can now do color conversion and scaling in a shader on the GPU. Finally, there are some layers that can be fully rendered on the GPU, such as those containing WebGL elements.
After these layers are rendered, there’s still a crucial last step to blend them all onto a single page as quickly as possible. Performing this last step on the CPU would have erased most of the performance gains achieved by accelerating individual layers, so Chromium now composites layers on the GPU when run with the --enable-accelerated-compositing flag.
To get optimal results users need to start Chromium with the --enable-accelerated-compositing flag.
The new gpu process is currently only available in Chromium, but it is likely that it will be integrated in one of the coming Google Chrome Dev releases. It will take some months probably before it will be available in beta and stable releases of Google Chrome.
Update: Hardware acceleration is turned on by default in all versions of Chrome if it is supported on the system the browser is run on.
The feature can be disabled if it is causing issues. To do that, load chrome://settings/ in the browser's address bar, click on the show advanced settings link on the page that opens, and remove the checkmark from "use hardware acceleration when available".
To find out if hardware acceleration is enabled, open the Chrome Task Manager with Shift-Esc and look for a GPU Process there. If you see it, hardware acceleration is used.Advertisement
Ghacks is a technology news blog that was founded in 2005 by Martin Brinkmann. It has since then become one of the most popular tech news sites on the Internet with five authors and regular contributions from freelance writers.