Apple's open source browser team wants to bring a standard API that brings the low-level graphics and general purpose computation power of modern GPUs to the web.

Dean Jackson, writing for WebKit.org:

GPU technology has improved and new software APIs have been created to better reflect the designs of modern GPUs. These new APIs exist at a lower level of abstraction and, due to their reduced overhead, generally offer better performance than OpenGL. The major platform technologies in this space are Direct3D 12 from Microsoft, Metal from Apple, and Vulkan from the Khronos Group. While these technologies have similar design concepts, unfortunately none are available across all platforms.

So what does this mean for the Web? These new technologies are clearly the next evolutionary step for content that can benefit from the power of the GPU. The success of the web platform requires defining a common standard that allows for multiple implementations, but here we have several graphics APIs that have nuanced architectural differences. In order to expose a modern, low-level technology that can accelerate graphics and computation, we need to design an API that can be implemented on top of many systems, including those mentioned above. With a broader landscape of graphics technologies, following one specific API like OpenGL is no longer possible.

Instead we need to evaluate and design a new web standard that provides a core set of required features, an API that can be implemented on a mix of platforms with different system graphics technologies, and the security and safety required to be exposed to the Web.

From the draft proposal:

It started as a mapping of Metal to JavaScript, but that won't be where it ends up. Not only are there some things in Metal that don't quite fit with Vulkan and D3D12, we also don't want to be tied to the Metal API. So please consider this a work in progress.

I share former iPhone OpenGL, Twitter for iPhone (Tweetie), and Letterpress developer Loren Brichter's reaction to the news.

Apple has such successful operating systems that, strange as it may sound, it liberates them to be progressive and forward thinking when it comes to the web. Not in a way that tries to mimic app behavior, but in a way that's true to the web. They don't have to worry about plug-in lock-in or services/advertising concerns. Instead, they can focus on security and privacy, performance and things just exactly like Web GPU.

It'll take me several more reads to even approach understanding the technical details but on first blush it feels like Web GPU kind of does for WebGL what Metal did for OpenGL — bring it into the future. But, instead of sitting on top of OpenGL and OpenCL, it'll sit on top of all the disparate vendor frameworks, like Microsoft's Direct X, Apple's Metal, and Vulkan, and present a clean, consistent, coherent layer for graphics on the web.

Not everyone, specially not everyone in the Vulkan community, is thrilled with that idea, but that strikes me like fans of a specific wiring vendor being upset about a discussion on unifying outlets.

It remains to be seen how Google's Chrome, Microsoft's EDGE, Mozilla's Firefox, and other browser teams react to the proposal, and who will join in Apple and the WebKit teams efforts.

There's a certain amount of skepticism that follows a lot of what Apple does. But if the other browsers start contributing as well, that skepticism might just turn into enthusiasm.

And given how important GPUs are and will continue be to the future of computing, the web can't afford to be short sighted when it comes to harnessing it.