Hi,

WebCL[1] defines a JavaScript binding to the Khronos OpenCL[2] standard for 
heterogeneous parallel computing. 
WebCL enables web applications to harness GPU and multi-core CPU parallel 
processing from within a Web browser/Runtime, 
enabling significant acceleration of applications. WebCL[3] is standardized on 
March 2014.

We have several demos to demonstrate the power of WebCL from various scenarios, 
such as: Image Processing(AlloyImage, Ripple),
3D transformation(Deformation) etc. It shows 2x~20x performance boost.

Currently, WebCL's dependency (OpenCL) is well supported on Android. From 
official wiki [4], 
It is supported by most of hardware vendors, such as: Intel, Qualcomm, Mtk, 
ARM-Mali, Imagination Tech etc.
What's more, there are many devices deployed with OpenCL library by default 
when shipping.
Document [5] lists most of popular devices in the market with OpenCL supported. 

So I propose to support WebCL APIs for Crosswalk on Android. Following is some 
design considering for WebCL.
1) Implement the APIs through WebCore binding.
2) Enable WebCL with flag, and Tizen will the potential target in future.
3) Dynamic load the OpenCL library, and add whitelist for various devices, due 
to OpenCL may missed in older devices. 
4) Memory management/transfer between WebCL and JavaScript Object.
5) Security enhancement.
6) Include conformance tests.
If you want more details, please refer to the design doc [5].

Because this feature is somewhat big, I propose to integrate with several steps 
as following:
1) Implement WebCL APIs, include dynamic loading OpenCL library, internal class 
set, external API binding etc. 
2) Add security check mechanism, and include conformance test suites.
3) Add whitelist for OpenCL, and enable WebCL support by default for devices in 
the whitelist on Android.

Reference:
[1] WebCL Wiki: https://www.khronos.org/webcl/
[2] OpenCL wiki: https://www.khronos.org/opencl/
[3] WebCL Spec: http://www.khronos.org/registry/webcl/specs/latest/1.0/
[4] http://www.khronos.org/conformance/adopters/conformant-products
[5] Design Doc: 
https://docs.google.com/a/intel.com/document/d/1fl5cGCFW1PDqtq0zDoiVnQ05dwyNYxtjmb4GdapiX7c/edit

Best wishes
Junmin
_______________________________________________
Crosswalk-dev mailing list
Crosswalk-dev@lists.crosswalk-project.org
https://lists.crosswalk-project.org/mailman/listinfo/crosswalk-dev

Reply via email to