-
Notifications
You must be signed in to change notification settings - Fork 6
/
todo.txt
49 lines (34 loc) · 1.76 KB
/
todo.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
Ideas for additional training material
--------------------------------------
[done] Show how to pass compilation options to clBuildProgram
[done] C++ wrapper api example
[done] Images: perform same stencil computation on regular memory and image
memory and compare the results; if using actual images link with FreeImage
library
[done] Binary kernels: create opencl compiler which outputs a binary kernel
compiled for a scpecific device
[todo]And a sample program which uses clCreateProgramWithBinary
to load the kernel; add a utility function to perform compilation.
[done] Show how to use pinned memory and memory mapping with clEnqueueMapBuffer
[done] MPI
[done] OpenGL interop : show results of stencil computations through OpenGL
(w/GLFW); note: remote connections through vglconnect do
not work; turbovnc client with vglrun doesn't work either with GLFW
because of xkb-related issues: redo with (FREE)GLUT
Show example of standard OpenCL compiler switches; in particular show how
'-g' can be used to debug kernel code
Full block matrix multiply with non-square matrices
Show example with vector data types
Concurrent/parallel use of multiple resources: contexts, kernels and command
queues with out of order execution enabled;show e.g. how run parallel kernels
on different devices and/or parallel kernels on same device with different
command queues
[?]Subregions, and offsets: restrict computation to a subset of the data and/or
show how to run parallel kernels on different data regions; kernel launch on
subregions is not supported by most OpenCL implementations.
Events:
* timing with callbacks
* sync between parallel kernels
* events in kernels with async local <--> global copies and (possibly)
overlap of computation and data exchange
OpenCL 1.2 ?