PSA: Evolution of the Chromium & Blink graphics stack

329 views
Skip to first unread message

Tom Wiltzius

unread,
Oct 5, 2013, 5:16:40 PM10/5/13
to blink-dev, Chromium-dev, graphics-dev
Hello everyone,

I sent out a PSA to the graphics-dev list a while back about this, but as we progress I'd like to call it out here for broader visibility. Particularly, note the intended deprecation of the software rendering path discussed a couple paragraphs down.

The graphics architecture in Chromium & Blink has been in significant flux for quite a while, and this trend is unfortunately likely to continue as we strive to make our platform perform well.

This rapid development has led to a proliferation of configuration modes, some of which are mutually incompatible and some of which are untested, but many of which are shipping on one platform or another. Reducing the number of modes to get a single (good) architecture running everywhere is a high priority for the graphics teams -- the current situation slows down development velocity and complicates the platform for web developers.

In short, the mode we're trying to get to everywhere is the accelerated rendering path with threaded compositing, impl-side painting, and Aura (or similar browser compositor) with the ubercompitor and deadline scheduler. This will all be backed up either by the real GL compositor or the software compositor when a reliable GPU is unavailable.

This is a tall order, but we're making rapid progress. The upcoming switch on Chrome on Linux and Windows to Aura will be a big step forward. This means in the short term, new features must work with Aura on Linux and Windows (as well as CrOS, where we've been using Aura for a while). In the medium term, we hope to be able to drop support for and delete the legacy software rendering path in Blink and the single-threaded compositor proxy. Slightly further out, we hope to drop support for non-ubercompositor browser compositing and, eventually, the non-impl-side painting path.

The details of this move are in some cases fuzzy as it's a many-part evolution, but I encourage anyone interested to follow along with the GPU architecture roadmap on dev.chromium.org, send any questions to graphi...@chromium.org, or peruse our graphics overview page for more information.

Cheers,
Tom

Addy Osmani

unread,
Oct 7, 2013, 10:01:08 AM10/7/13
to blin...@chromium.org, Chromium-dev, graphics-dev
Super-interesting reads on the uber-compositor and more. Thanks for sharing the roadmap, Tom!
Reply all
Reply to author
Forward
0 new messages