source: CIVL/examples/translation/opencl/notes/ToDo@ cd8d07a

1.23 2.0 acw/focus-triggers main test-branch
Last change on this file since cd8d07a was 4b7d11e, checked in by Jacob Trieu <fuufusuu@…>, 12 years ago

git-svn-id: svn://vsl.cis.udel.edu/civl/trunk@1120 fb995dde-84ed-4084-dfe6-e5aef3e2452c

  • Property mode set to 100644
File size: 2.0 KB
RevLine 
[6267964]1use demoCL in Xcode to get hardware info (driver version openCL 1.1)
[e01b89d]2
3square.c
4
5
6Types:
7size_t
8cl_device_id
9cl_context
10cl_command_queue
11cl_program
12cl_kernel
13
14cl_mem
15Types for now are just structs, see cl.h
16------Above this line are implemented-------
17Hardware methods:
18
19methods are externs
20 Declared but not defined unless given one
21
22clGetDeviceIDs
23 uses int err, takes 5 parameters
24 http://www.khronos.org/registry/cl/sdk/1.0/docs/man/xhtml/clGetDeviceIDs.html
[4b7d11e]25 [x]
[e01b89d]26
27 cl_int clGetPlatformIDs( cl_uint num_entries,
28 cl_platform_id *platforms,
29 cl_uint *num_platforms)
30
31clCreateContext
32 uses a cl_context context, takes 6 parameters
33 http://www.khronos.org/registry/cl/sdk/1.0/docs/man/xhtml/clCreateContext.html
34 openCL uses them for commands, memory, program, kernel objects, executing kernels
[0744ab0]35 [x]
[e01b89d]36
37Kernels and other:
38clCreateCommandQueue
39 uses a cl_command_queue commands, takes 4 parameters
40 uses &device_id and &err
41 http://www.khronos.org/registry/cl/sdk/1.0/docs/man/xhtml/clCreateCommandQueue.html
[1a54e12]42 [x]
[e01b89d]43
44clCreateProgramWithSource
45 uses cl_program program, takes 5 parameters
46 uses context
[e8b328b]47 -IN PROGRESS-
48
49clCreateProgramWithBinary
[2259218]50 [x], see clCreateProgramWithSource
[e01b89d]51
52clBuildProgram
[4b7d11e]53 [x]
[e01b89d]54
[4b7d11e]55//clGetProgramBuildInfo
[e01b89d]56
57clCreateKernel
[4b7d11e]58[x]
[e01b89d]59
60clCreateBuffer
[4b7d11e]61[]
[e01b89d]62
63clEnqueueWriteBuffer
[4b7d11e]64[]
[e01b89d]65
66clSetKernelArg
[4b7d11e]67[]
[e01b89d]68
69clGetKernelWorkGroupInfo
[4b7d11e]70[]
[e01b89d]71
72clEnqueueReadBuffer
[4b7d11e]73[]
[e01b89d]74
75clReleaseMemObject
[4b7d11e]76[]
[e01b89d]77
78clReleaseProgram
[4b7d11e]79[]
[e01b89d]80
81clReleaseKernel
[4b7d11e]82[]
[e01b89d]83
84clReleaseCommandQueue
[4b7d11e]85[]
[e01b89d]86
87clReleaseContext
[4b7d11e]88[]
89
90Kernel code changes
91[6/17/14, 12:34:48 PM] Jean Jacques Rousseau: oh, right
92[6/17/14, 12:35:48 PM] Jean Jacques Rousseau: although, I think I found it
93[6/17/14, 12:36:04 PM] Jean Jacques Rousseau: this Comm is a struct, and one of the fields is storing the rank
94[6/17/14, 12:36:12 PM] Jean Jacques Rousseau: when you make it, put in the rank yourself
[e01b89d]95
[2259218]96flam naught shy stub
97bash
[4b7d11e]98Done: clGetDeviceIDs, clCreateKernel
99
100ToDo:
[2259218]101
[4b7d11e]102Problems:
103Alterations to clGetDeviceIDs, slight problems with structs and pointers combined
Note: See TracBrowser for help on using the repository browser.