Graphics Programming for the Web with WebCL
-
Upload
mikael-bourges-sevenier -
Category
Technology
-
view
1.994 -
download
1
description
Transcript of Graphics Programming for the Web with WebCL
![Page 1: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/1.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
1
![Page 2: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/2.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
2
Graphics Programming on the Webwith WebCL
Mikaël Bourges-Sévenier, Motorola MobilityAugust 9, 2012
![Page 3: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/3.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
3
Over 32000 planks ;-) Blender/Bullet/SmallLuxGPU OpenCL By Alain Ducharme “Phymec” http
://www.youtube.com/watch?v=143k1fqPukk
![Page 4: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/4.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
4
For compute intensive web applications Games: physics, special effects Computational photography Scientific simulations Augmented reality …
Use many devices for general computations CPU, GPU, DSP, FPGA…
Motivation
![Page 5: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/5.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
5
GPUs provide exponential GFLOPS growth every year vs. CPUs
Motivation
NVidia CUDA/OpenCL C programming guide
![Page 6: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/6.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
6
Motivation and Goals General-Purpose computations on GPU (GPGPU)
From to The need for more general data-parallel computations
WebCL overview A JavaScript API over OpenCL OpenCL concepts WebCL API
WebCL programming Pure computations WebGL interoperability
Content
![Page 7: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/7.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
7
Motivation and Goals General-Purpose computations on GPU (GPGPU)
From to The need for more general data-parallel computations
WebCL overview A JavaScript API over OpenCL OpenCL concepts WebCL API
WebCL programming Pure computations WebGL interoperability
Content
![Page 8: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/8.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
8
Programmable vertex & fragment shaders
WebGL pipeline
![Page 9: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/9.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
9
With clever mapping of algorithms to GL pipeline Textures as data buffers Texture coordinates as computational domain Vertex coordinates as computational range Vertex shaders
• to start computations• scatter operations
Fragment shaders • for algorithms steps• gather operations
General Purpose computations on GPU
Scatter (write values)
Gather (read values)
![Page 10: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/10.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
10
Hard to map algorithms to graphics pipeline Hard to do scatter operations Shader instances can NOT directly communicate
with one another… GPGPU with GL is hack-ish
CL is made for GPGPU, not graphics
GPGPU with GL limitations
![Page 11: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/11.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
11
Motivation and Goals General-Purpose computations on GPU (GPGPU)
From to The need for more general data-parallel computations
WebCL overview A JavaScript API over OpenCL OpenCL concepts WebCL API
WebCL programming Pure computations WebGL interoperability
Content
![Page 12: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/12.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
12
WebCL brings parallel computing to the Web through a secure JavaScript binding to OpenCL 1.1 (2011) Open standard, royalty-free Platform independent Device independent being standardized by Khronos
First public working draft April 2012 http://www.khronos.org/webcl/
WebCL overview
![Page 13: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/13.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
13
Features C-based cross-platform API Kernels use a subset of C99 and extensions
• Vector extensions (<type>N)• No recursion, no function pointers• No dynamic memory (malloc, free…), no standard libc methods (memcpy…)
Well-defined numerical accuracy both for intergers and floats Rich-set of built-in functions (e.g. as GLSL and more)
• But no random method Close to the hardware
• Control over memory use• Control over thread scheduling
OpenCL overview
![Page 14: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/14.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
14
A host is connected to one or more Compute devices Compute device
A collection of one or more compute units (~ cores)
A compute unit is composed of one or more processingelements (~ threads)
Processing elements execute code as SIMD or SPMD
OpenCL Device Model
![Page 15: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/15.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
15
Kernel Basic unit of executable code (~ DLL entry point) Data-parallel or task-parallel
Program Collection of kernels and functions called by kernels Analogous to a dynamic library (DLL)
Command Queue Control operations on OpenCL objects (memory transfers, kernels execution, synchronization) Commands queued in order Execution in-order or out-of-order Applications may use multiple command-queues per device
Work-item An execution of a kernel by a processing element (~ thread)
Work-group A collection of work-items that execute on a single compute unit (~ core)
OpenCL Execution Model
Queue QueueContext
GPU
CPU
![Page 16: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/16.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
16
OpenCL Work-group 2D analogy
# work-items = # pixels# work-groups = # tilesWork-group size = tileW * tileH
All threads in a workgroup runsynchronously
Local
Global
![Page 17: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/17.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
17
On Host CPU RAM
On Compute Device Global memory = GPU RAM Constant memory = cached global
memory Texture memory = cached global
memory optimized for streaming reads Local memory = high-speed memory
shared among work-items of a work-group (~ L1 cache)
Private memory = registers of a work-item, very fast memory
Memory management is explicit App must move data host global local➞ ➞ and back
OpenCL Memory Model
![Page 18: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/18.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
18
Defined on a N-dimensional computation domain A kernel is executed at each point of the
computation domain
OpenCL Kernel
![Page 19: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/19.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
19
WebCL API
Same OO model as OpenCLwith JS classesWebCL is global object
![Page 20: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/20.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
20
Motivation and Goals General-Purpose computations on GPU (GPGPU)
From to The need for more general data-parallel computations
WebCL overview A JavaScript API over OpenCL OpenCL concepts WebCL API
WebCL programming Pure computations WebGL interoperability
Content
![Page 21: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/21.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
21
Create context Compile kernels Setup command-queues Setup kernels arguments Execute commands Read results
WebCL sequence (host side)
![Page 22: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/22.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
22
WebCL sequence (host side)
![Page 23: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/23.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
23
WebCL sequence (host side)
![Page 24: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/24.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
24
WebCL sequence (host side)
![Page 25: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/25.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
25
WebCL sequence (host side)
![Page 26: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/26.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
26
WebCL sequence (host side)
Note: Use local work size = [] or null (default)to let driver chose the best values.
![Page 27: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/27.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
27
WebCL sequence (host side)
![Page 28: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/28.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
28
“Hello World of CL” C = A x B N x N matrices
Example: Matrix multiplication
![Page 29: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/29.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
29
Optimization N x N matrices C divided into m x m tiles With
• m = N / P• P = # threads per workgroup (16)
Example: Matrix multiplication
![Page 30: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/30.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
30
MacBook Pro (early 2011), OSX 10.8 CPU: Intel Core i7, 2.2GHz, 4 cores GPU: AMD Radeon HD 6750M, 1 GB, 480 SPU, 600 MHz, 576 GFLOPS
Example: Comparison with sequential
128 256 512 1024 20480
50
100
150
200
250
OpenMPCL (CPU)CL (GPU)CL (GPU opt)
Spee
dup
fact
or
![Page 31: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/31.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
31
WebCL context created from WebGL context
Configure shared CL objects from GL counterparts
Sync GL and CL Flush GL, acquire GL object Execute CL Release CL object, flush CL
Vertex arrays, textures, render-buffers can be shared with CL
WebCL / WebGL interop
![Page 32: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/32.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
32
WebCL / WebGL interop
![Page 33: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/33.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
33
WebCL / WebGL interop (texture)
![Page 34: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/34.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
34
Based on Evgeny Demidov 2D ink droplet
Demo: GL Texture update with CL
WebGL ~26 fps WebCL ~124 fps
![Page 35: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/35.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
35
WebCL / WebGL interop (vbo)
![Page 36: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/36.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
36
Demo: VBO update with CL
![Page 37: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/37.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
37
WebCL/WebGL interop (host side)
![Page 38: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/38.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
38
Based on Iñigo Quilez ShaderToy
Demo: Texture update with CL
WebGL ~6 fps WebCL ~22 fps
![Page 39: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/39.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
39
WebCL enables GPGPU applications in Web browsers Careful usage of architecture can lead to impressive
speedup With WebGL interoperability, rich graphics Web
applications are now possible DRAFT WebCL specification
Quite stable JavaScript API Focusing on more security and robustness
Perspectives
![Page 40: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/40.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
40
Khronos open process to engage Web community Public specification drafts, mailing lists, forums http://www.khronos.org/webcl/ [email protected]
Nokia open source prototype for Firefox in May 2011 (LGPL) http://webcl.nokiaresearch.com
Samsung open source prototype for WebKit in July 2011 (BSD) http://code.google.com/p/webcl/
Motorola open source prototype for NodeJS in March 2012 (BSD) https://github.com/Motorola-Mobility/node-webcl
WebCL Open process and Resources
![Page 41: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/41.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
41
![Page 42: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/42.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
42
This slide has a 16:9 media window
![Page 43: Graphics Programming for the Web with WebCL](https://reader036.fdocuments.in/reader036/viewer/2022062312/555e23a3d8b42a6a4c8b4d69/html5/thumbnails/43.jpg)
This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read
if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this
Click to edit Master title style
43
OpenCL Programming Guide - The “Red Book” of OpenCL http://www.amazon.com/OpenCL-Programming-Guide-Aaftab-Munshi/dp/0321749642
OpenCL in Action http://www.amazon.com/OpenCL-Action-Accelerate-Graphics-Computations/dp/1617290173/
Heterogeneous Computing with OpenCL http://www.amazon.com/Heterogeneous-Computing-with-OpenCL-ebook/dp/B005JRHYUS
The OpenCL Programming Book http://www.fixstars.com/en/opencl/book/
Start learning Now!