Want to add OpenCL/WebCL support into Blink and Chromium.

837 views
Skip to first unread message

Peixuan Zhang

unread,
Apr 6, 2013, 10:09:23 PM4/6/13
to blin...@chromium.org
Hello All,
     Is there any plan of adding OpenCL/WebCL support into Blink? I know the biggest problem is to bypass the sandbox in Chromium, but I think Browsers need to support WebCL in the further. Is there any development plan? And if our team want to add such support into Blink or Chromium, is there any suggestion about how to do it?
     Our team has completed some code using OpenCL and want to contribute to Chromium or Blink, but now Chromium doesn't support OpenCL, so we want to do some work about OpenCL/WebCL support in Chromium/Blink. I want some suggestion, Thanks a lot.

Adam Barth

unread,
Apr 7, 2013, 5:56:40 PM4/7/13
to Peixuan Zhang, blink-dev
Hi Peixuan,

On Sat, Apr 6, 2013 at 7:09 PM, Peixuan Zhang <zhangpe...@gmail.com> wrote:
     Is there any plan of adding OpenCL/WebCL support into Blink? I know the biggest problem is to bypass the sandbox in Chromium, but I think Browsers need to support WebCL in the further. Is there any development plan?

We have no current plans to implement OpenCL/WebCL.
 
And if our team want to add such support into Blink or Chromium, is there any suggestion about how to do it?

You can find the guidelines for adding new features to Blink on the project page:


In particular, we're interested in the feature's progress on the standards track, implementation interest from other browser vendors, and API footprint.
 
     Our team has completed some code using OpenCL and want to contribute to Chromium or Blink, but now Chromium doesn't support OpenCL, so we want to do some work about OpenCL/WebCL support in Chromium/Blink. I want some suggestion, Thanks a lot.

Thanks for your interest in contributing to Blink.  The project is very new, and most of our efforts are focused on cleanup, refactoring, and infrastructure at the moment.  That doesn't mean we aren't taking on new features, just that we're being conservative at the moment.

If you're interested in contributing to Blink, I'd recommend starting off in one of the areas we're currently focused on, namely cleanup and refactoring.  If you'd like some more concrete advice, feel free to ask.

Thanks!
Adam

Peter Beverloo

unread,
Apr 8, 2013, 8:31:07 AM4/8/13
to Adam Barth, Peixuan Zhang, blink-dev
On Sun, Apr 7, 2013 at 10:56 PM, Adam Barth <aba...@chromium.org> wrote:
Hi Peixuan,

On Sat, Apr 6, 2013 at 7:09 PM, Peixuan Zhang <zhangpe...@gmail.com> wrote:
     Is there any plan of adding OpenCL/WebCL support into Blink? I know the biggest problem is to bypass the sandbox in Chromium, but I think Browsers need to support WebCL in the further. Is there any development plan?

We have no current plans to implement OpenCL/WebCL.

WebCL already has an implementation in Blink, though it is disabled through a compile time flag.  No plumbing through the public API has been done to make this work for Chromium, so I suspect Peixuan Zhang's interest is in enabling the compile time flag and implementing it in Chromium.

I personally have doubts about the API itself; we should definitely do an API Review if we decide to pursue wiring up this feature.

Peter

Stephen Chenney

unread,
Apr 8, 2013, 10:25:49 AM4/8/13
to Peter Beverloo, Adam Barth, Peixuan Zhang, blink-dev, graphi...@chromium.org, skia-d...@googlegroups.com
See my comments on the other post.

In short, we'll be removing the OpenCL defines and code from Blink in the short term because it is not designed in a way that is suitable for Chrome.

Stephen.
--
Stephen Chenney | Software Engineer | sche...@google.com | 404-314-1809

Justin Schuh

unread,
Apr 8, 2013, 12:50:34 PM4/8/13
to Stephen Chenney, Peter Beverloo, Adam Barth, Peixuan Zhang, blink-dev, graphi...@chromium.org, skia-d...@googlegroups.com
On Mon, Apr 8, 2013 at 7:25 AM, Stephen Chenney <sche...@google.com> wrote:
See my comments on the other post.

In short, we'll be removing the OpenCL defines and code from Blink in the short term because it is not designed in a way that is suitable for Chrome.


Just to expand on Stephen's point, our multi-process split and sandbox make it impossible to use OpenCL directly from inside a renderer. So, if we did decide to support WebCL in Blink (which is another complicated security question) we'd need to write an entirely new implementation that plumbed all of the OpenCL support through to an appropriate process (probably the GPU process). As such, Stephen is entirely correct that the WebKit OpenCL implementation is just dead code that we need to remove.

-j
Reply all
Reply to author
Forward
0 new messages