tinygrad 0.8.0__py3-none-any.whl → 0.9.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. tinygrad/__init__.py +6 -6
  2. tinygrad/codegen/__init__.py +0 -0
  3. tinygrad/codegen/kernel.py +253 -225
  4. tinygrad/codegen/linearizer.py +398 -436
  5. tinygrad/codegen/uops.py +451 -0
  6. tinygrad/device.py +268 -274
  7. tinygrad/dtype.py +56 -40
  8. tinygrad/engine/__init__.py +0 -0
  9. tinygrad/engine/graph.py +100 -0
  10. tinygrad/engine/jit.py +198 -0
  11. tinygrad/engine/realize.py +192 -0
  12. tinygrad/engine/schedule.py +370 -0
  13. tinygrad/engine/search.py +199 -0
  14. tinygrad/{mlops.py → function.py} +40 -32
  15. tinygrad/helpers.py +144 -46
  16. tinygrad/lazy.py +143 -242
  17. tinygrad/multi.py +173 -0
  18. tinygrad/nn/__init__.py +180 -9
  19. tinygrad/nn/datasets.py +8 -0
  20. tinygrad/nn/optim.py +106 -28
  21. tinygrad/nn/state.py +87 -19
  22. tinygrad/ops.py +104 -45
  23. tinygrad/renderer/__init__.py +65 -0
  24. tinygrad/renderer/assembly.py +269 -0
  25. tinygrad/renderer/cstyle.py +308 -210
  26. tinygrad/renderer/llvmir.py +119 -124
  27. tinygrad/runtime/__init__.py +0 -0
  28. tinygrad/runtime/autogen/amd_gpu.py +13403 -0
  29. tinygrad/runtime/autogen/comgr.py +891 -0
  30. tinygrad/runtime/autogen/cuda.py +5923 -0
  31. tinygrad/runtime/autogen/hip.py +5909 -0
  32. tinygrad/runtime/autogen/hsa.py +5893 -0
  33. tinygrad/runtime/autogen/io_uring.py +1486 -0
  34. tinygrad/runtime/autogen/kfd.py +812 -0
  35. tinygrad/runtime/autogen/nv_gpu.py +33597 -0
  36. tinygrad/runtime/autogen/opencl.py +1795 -0
  37. tinygrad/runtime/driver/__init__.py +0 -0
  38. tinygrad/runtime/driver/hip_comgr.py +56 -0
  39. tinygrad/runtime/graph/__init__.py +0 -0
  40. tinygrad/runtime/graph/clang.py +39 -0
  41. tinygrad/runtime/graph/cuda.py +59 -54
  42. tinygrad/runtime/graph/hcq.py +187 -0
  43. tinygrad/runtime/graph/metal.py +37 -41
  44. tinygrad/runtime/ops_amd.py +550 -0
  45. tinygrad/runtime/ops_clang.py +16 -14
  46. tinygrad/runtime/ops_cuda.py +129 -37
  47. tinygrad/runtime/ops_disk.py +111 -43
  48. tinygrad/runtime/ops_gpu.py +52 -50
  49. tinygrad/runtime/ops_llvm.py +36 -56
  50. tinygrad/runtime/ops_metal.py +41 -24
  51. tinygrad/runtime/ops_npy.py +9 -0
  52. tinygrad/runtime/ops_nv.py +625 -0
  53. tinygrad/runtime/ops_python.py +208 -0
  54. tinygrad/shape/__init__.py +0 -0
  55. tinygrad/shape/shapetracker.py +46 -107
  56. tinygrad/shape/symbolic.py +99 -98
  57. tinygrad/shape/view.py +162 -45
  58. tinygrad/tensor.py +2492 -483
  59. {tinygrad-0.8.0.dist-info → tinygrad-0.9.1.dist-info}/LICENSE +1 -1
  60. {tinygrad-0.8.0.dist-info → tinygrad-0.9.1.dist-info}/METADATA +31 -13
  61. tinygrad-0.9.1.dist-info/RECORD +63 -0
  62. {tinygrad-0.8.0.dist-info → tinygrad-0.9.1.dist-info}/WHEEL +1 -1
  63. tinygrad/features/image.py +0 -93
  64. tinygrad/features/multi.py +0 -103
  65. tinygrad/features/search.py +0 -160
  66. tinygrad/graph.py +0 -106
  67. tinygrad/jit.py +0 -152
  68. tinygrad/realize.py +0 -50
  69. tinygrad/runtime/graph/hip.py +0 -24
  70. tinygrad/runtime/ops_cpu.py +0 -45
  71. tinygrad/runtime/ops_hip.py +0 -97
  72. tinygrad/runtime/ops_torch.py +0 -49
  73. tinygrad-0.8.0.dist-info/RECORD +0 -41
  74. {tinygrad-0.8.0.dist-info → tinygrad-0.9.1.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1795 @@
1
+ # mypy: ignore-errors
2
+ # -*- coding: utf-8 -*-
3
+ #
4
+ # TARGET arch is: []
5
+ # WORD_SIZE is: 8
6
+ # POINTER_SIZE is: 8
7
+ # LONGDOUBLE_SIZE is: 16
8
+ #
9
+ import ctypes, ctypes.util
10
+
11
+
12
+ class AsDictMixin:
13
+ @classmethod
14
+ def as_dict(cls, self):
15
+ result = {}
16
+ if not isinstance(self, AsDictMixin):
17
+ # not a structure, assume it's already a python object
18
+ return self
19
+ if not hasattr(cls, "_fields_"):
20
+ return result
21
+ # sys.version_info >= (3, 5)
22
+ # for (field, *_) in cls._fields_: # noqa
23
+ for field_tuple in cls._fields_: # noqa
24
+ field = field_tuple[0]
25
+ if field.startswith('PADDING_'):
26
+ continue
27
+ value = getattr(self, field)
28
+ type_ = type(value)
29
+ if hasattr(value, "_length_") and hasattr(value, "_type_"):
30
+ # array
31
+ if not hasattr(type_, "as_dict"):
32
+ value = [v for v in value]
33
+ else:
34
+ type_ = type_._type_
35
+ value = [type_.as_dict(v) for v in value]
36
+ elif hasattr(value, "contents") and hasattr(value, "_type_"):
37
+ # pointer
38
+ try:
39
+ if not hasattr(type_, "as_dict"):
40
+ value = value.contents
41
+ else:
42
+ type_ = type_._type_
43
+ value = type_.as_dict(value.contents)
44
+ except ValueError:
45
+ # nullptr
46
+ value = None
47
+ elif isinstance(value, AsDictMixin):
48
+ # other structure
49
+ value = type_.as_dict(value)
50
+ result[field] = value
51
+ return result
52
+
53
+
54
+ class Structure(ctypes.Structure, AsDictMixin):
55
+
56
+ def __init__(self, *args, **kwds):
57
+ # We don't want to use positional arguments fill PADDING_* fields
58
+
59
+ args = dict(zip(self.__class__._field_names_(), args))
60
+ args.update(kwds)
61
+ super(Structure, self).__init__(**args)
62
+
63
+ @classmethod
64
+ def _field_names_(cls):
65
+ if hasattr(cls, '_fields_'):
66
+ return (f[0] for f in cls._fields_ if not f[0].startswith('PADDING'))
67
+ else:
68
+ return ()
69
+
70
+ @classmethod
71
+ def get_type(cls, field):
72
+ for f in cls._fields_:
73
+ if f[0] == field:
74
+ return f[1]
75
+ return None
76
+
77
+ @classmethod
78
+ def bind(cls, bound_fields):
79
+ fields = {}
80
+ for name, type_ in cls._fields_:
81
+ if hasattr(type_, "restype"):
82
+ if name in bound_fields:
83
+ if bound_fields[name] is None:
84
+ fields[name] = type_()
85
+ else:
86
+ # use a closure to capture the callback from the loop scope
87
+ fields[name] = (
88
+ type_((lambda callback: lambda *args: callback(*args))(
89
+ bound_fields[name]))
90
+ )
91
+ del bound_fields[name]
92
+ else:
93
+ # default callback implementation (does nothing)
94
+ try:
95
+ default_ = type_(0).restype().value
96
+ except TypeError:
97
+ default_ = None
98
+ fields[name] = type_((
99
+ lambda default_: lambda *args: default_)(default_))
100
+ else:
101
+ # not a callback function, use default initialization
102
+ if name in bound_fields:
103
+ fields[name] = bound_fields[name]
104
+ del bound_fields[name]
105
+ else:
106
+ fields[name] = type_()
107
+ if len(bound_fields) != 0:
108
+ raise ValueError(
109
+ "Cannot bind the following unknown callback(s) {}.{}".format(
110
+ cls.__name__, bound_fields.keys()
111
+ ))
112
+ return cls(**fields)
113
+
114
+
115
+ class Union(ctypes.Union, AsDictMixin):
116
+ pass
117
+
118
+
119
+
120
+ _libraries = {}
121
+ _libraries['libOpenCL.so.1'] = ctypes.CDLL(ctypes.util.find_library('OpenCL'))
122
+ c_int128 = ctypes.c_ubyte*16
123
+ c_uint128 = c_int128
124
+ void = None
125
+ if ctypes.sizeof(ctypes.c_longdouble) == 16:
126
+ c_long_double_t = ctypes.c_longdouble
127
+ else:
128
+ c_long_double_t = ctypes.c_ubyte*16
129
+
130
+ def string_cast(char_pointer, encoding='utf-8', errors='strict'):
131
+ value = ctypes.cast(char_pointer, ctypes.c_char_p).value
132
+ if value is not None and encoding is not None:
133
+ value = value.decode(encoding, errors=errors)
134
+ return value
135
+
136
+
137
+ def char_pointer_cast(string, encoding='utf-8'):
138
+ if encoding is not None:
139
+ try:
140
+ string = string.encode(encoding)
141
+ except AttributeError:
142
+ # In Python3, bytes has no encode attribute
143
+ pass
144
+ string = ctypes.c_char_p(string)
145
+ return ctypes.cast(string, ctypes.POINTER(ctypes.c_char))
146
+
147
+
148
+
149
+
150
+
151
+ __OPENCL_CL_H = True # macro
152
+ CL_NAME_VERSION_MAX_NAME_SIZE = 64 # macro
153
+ CL_SUCCESS = 0 # macro
154
+ CL_DEVICE_NOT_FOUND = -1 # macro
155
+ CL_DEVICE_NOT_AVAILABLE = -2 # macro
156
+ CL_COMPILER_NOT_AVAILABLE = -3 # macro
157
+ CL_MEM_OBJECT_ALLOCATION_FAILURE = -4 # macro
158
+ CL_OUT_OF_RESOURCES = -5 # macro
159
+ CL_OUT_OF_HOST_MEMORY = -6 # macro
160
+ CL_PROFILING_INFO_NOT_AVAILABLE = -7 # macro
161
+ CL_MEM_COPY_OVERLAP = -8 # macro
162
+ CL_IMAGE_FORMAT_MISMATCH = -9 # macro
163
+ CL_IMAGE_FORMAT_NOT_SUPPORTED = -10 # macro
164
+ CL_BUILD_PROGRAM_FAILURE = -11 # macro
165
+ CL_MAP_FAILURE = -12 # macro
166
+ CL_MISALIGNED_SUB_BUFFER_OFFSET = -13 # macro
167
+ CL_EXEC_STATUS_ERROR_FOR_EVENTS_IN_WAIT_LIST = -14 # macro
168
+ CL_COMPILE_PROGRAM_FAILURE = -15 # macro
169
+ CL_LINKER_NOT_AVAILABLE = -16 # macro
170
+ CL_LINK_PROGRAM_FAILURE = -17 # macro
171
+ CL_DEVICE_PARTITION_FAILED = -18 # macro
172
+ CL_KERNEL_ARG_INFO_NOT_AVAILABLE = -19 # macro
173
+ CL_INVALID_VALUE = -30 # macro
174
+ CL_INVALID_DEVICE_TYPE = -31 # macro
175
+ CL_INVALID_PLATFORM = -32 # macro
176
+ CL_INVALID_DEVICE = -33 # macro
177
+ CL_INVALID_CONTEXT = -34 # macro
178
+ CL_INVALID_QUEUE_PROPERTIES = -35 # macro
179
+ CL_INVALID_COMMAND_QUEUE = -36 # macro
180
+ CL_INVALID_HOST_PTR = -37 # macro
181
+ CL_INVALID_MEM_OBJECT = -38 # macro
182
+ CL_INVALID_IMAGE_FORMAT_DESCRIPTOR = -39 # macro
183
+ CL_INVALID_IMAGE_SIZE = -40 # macro
184
+ CL_INVALID_SAMPLER = -41 # macro
185
+ CL_INVALID_BINARY = -42 # macro
186
+ CL_INVALID_BUILD_OPTIONS = -43 # macro
187
+ CL_INVALID_PROGRAM = -44 # macro
188
+ CL_INVALID_PROGRAM_EXECUTABLE = -45 # macro
189
+ CL_INVALID_KERNEL_NAME = -46 # macro
190
+ CL_INVALID_KERNEL_DEFINITION = -47 # macro
191
+ CL_INVALID_KERNEL = -48 # macro
192
+ CL_INVALID_ARG_INDEX = -49 # macro
193
+ CL_INVALID_ARG_VALUE = -50 # macro
194
+ CL_INVALID_ARG_SIZE = -51 # macro
195
+ CL_INVALID_KERNEL_ARGS = -52 # macro
196
+ CL_INVALID_WORK_DIMENSION = -53 # macro
197
+ CL_INVALID_WORK_GROUP_SIZE = -54 # macro
198
+ CL_INVALID_WORK_ITEM_SIZE = -55 # macro
199
+ CL_INVALID_GLOBAL_OFFSET = -56 # macro
200
+ CL_INVALID_EVENT_WAIT_LIST = -57 # macro
201
+ CL_INVALID_EVENT = -58 # macro
202
+ CL_INVALID_OPERATION = -59 # macro
203
+ CL_INVALID_GL_OBJECT = -60 # macro
204
+ CL_INVALID_BUFFER_SIZE = -61 # macro
205
+ CL_INVALID_MIP_LEVEL = -62 # macro
206
+ CL_INVALID_GLOBAL_WORK_SIZE = -63 # macro
207
+ CL_INVALID_PROPERTY = -64 # macro
208
+ CL_INVALID_IMAGE_DESCRIPTOR = -65 # macro
209
+ CL_INVALID_COMPILER_OPTIONS = -66 # macro
210
+ CL_INVALID_LINKER_OPTIONS = -67 # macro
211
+ CL_INVALID_DEVICE_PARTITION_COUNT = -68 # macro
212
+ CL_INVALID_PIPE_SIZE = -69 # macro
213
+ CL_INVALID_DEVICE_QUEUE = -70 # macro
214
+ CL_INVALID_SPEC_ID = -71 # macro
215
+ CL_MAX_SIZE_RESTRICTION_EXCEEDED = -72 # macro
216
+ CL_FALSE = 0 # macro
217
+ CL_TRUE = 1 # macro
218
+ CL_BLOCKING = 1 # macro
219
+ CL_NON_BLOCKING = 0 # macro
220
+ CL_PLATFORM_PROFILE = 0x0900 # macro
221
+ CL_PLATFORM_VERSION = 0x0901 # macro
222
+ CL_PLATFORM_NAME = 0x0902 # macro
223
+ CL_PLATFORM_VENDOR = 0x0903 # macro
224
+ CL_PLATFORM_EXTENSIONS = 0x0904 # macro
225
+ CL_PLATFORM_HOST_TIMER_RESOLUTION = 0x0905 # macro
226
+ CL_PLATFORM_NUMERIC_VERSION = 0x0906 # macro
227
+ CL_PLATFORM_EXTENSIONS_WITH_VERSION = 0x0907 # macro
228
+ CL_DEVICE_TYPE_DEFAULT = (1<<0) # macro
229
+ CL_DEVICE_TYPE_CPU = (1<<1) # macro
230
+ CL_DEVICE_TYPE_GPU = (1<<2) # macro
231
+ CL_DEVICE_TYPE_ACCELERATOR = (1<<3) # macro
232
+ CL_DEVICE_TYPE_CUSTOM = (1<<4) # macro
233
+ CL_DEVICE_TYPE_ALL = 0xFFFFFFFF # macro
234
+ CL_DEVICE_TYPE = 0x1000 # macro
235
+ CL_DEVICE_VENDOR_ID = 0x1001 # macro
236
+ CL_DEVICE_MAX_COMPUTE_UNITS = 0x1002 # macro
237
+ CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS = 0x1003 # macro
238
+ CL_DEVICE_MAX_WORK_GROUP_SIZE = 0x1004 # macro
239
+ CL_DEVICE_MAX_WORK_ITEM_SIZES = 0x1005 # macro
240
+ CL_DEVICE_PREFERRED_VECTOR_WIDTH_CHAR = 0x1006 # macro
241
+ CL_DEVICE_PREFERRED_VECTOR_WIDTH_SHORT = 0x1007 # macro
242
+ CL_DEVICE_PREFERRED_VECTOR_WIDTH_INT = 0x1008 # macro
243
+ CL_DEVICE_PREFERRED_VECTOR_WIDTH_LONG = 0x1009 # macro
244
+ CL_DEVICE_PREFERRED_VECTOR_WIDTH_FLOAT = 0x100A # macro
245
+ CL_DEVICE_PREFERRED_VECTOR_WIDTH_DOUBLE = 0x100B # macro
246
+ CL_DEVICE_MAX_CLOCK_FREQUENCY = 0x100C # macro
247
+ CL_DEVICE_ADDRESS_BITS = 0x100D # macro
248
+ CL_DEVICE_MAX_READ_IMAGE_ARGS = 0x100E # macro
249
+ CL_DEVICE_MAX_WRITE_IMAGE_ARGS = 0x100F # macro
250
+ CL_DEVICE_MAX_MEM_ALLOC_SIZE = 0x1010 # macro
251
+ CL_DEVICE_IMAGE2D_MAX_WIDTH = 0x1011 # macro
252
+ CL_DEVICE_IMAGE2D_MAX_HEIGHT = 0x1012 # macro
253
+ CL_DEVICE_IMAGE3D_MAX_WIDTH = 0x1013 # macro
254
+ CL_DEVICE_IMAGE3D_MAX_HEIGHT = 0x1014 # macro
255
+ CL_DEVICE_IMAGE3D_MAX_DEPTH = 0x1015 # macro
256
+ CL_DEVICE_IMAGE_SUPPORT = 0x1016 # macro
257
+ CL_DEVICE_MAX_PARAMETER_SIZE = 0x1017 # macro
258
+ CL_DEVICE_MAX_SAMPLERS = 0x1018 # macro
259
+ CL_DEVICE_MEM_BASE_ADDR_ALIGN = 0x1019 # macro
260
+ CL_DEVICE_MIN_DATA_TYPE_ALIGN_SIZE = 0x101A # macro
261
+ CL_DEVICE_SINGLE_FP_CONFIG = 0x101B # macro
262
+ CL_DEVICE_GLOBAL_MEM_CACHE_TYPE = 0x101C # macro
263
+ CL_DEVICE_GLOBAL_MEM_CACHELINE_SIZE = 0x101D # macro
264
+ CL_DEVICE_GLOBAL_MEM_CACHE_SIZE = 0x101E # macro
265
+ CL_DEVICE_GLOBAL_MEM_SIZE = 0x101F # macro
266
+ CL_DEVICE_MAX_CONSTANT_BUFFER_SIZE = 0x1020 # macro
267
+ CL_DEVICE_MAX_CONSTANT_ARGS = 0x1021 # macro
268
+ CL_DEVICE_LOCAL_MEM_TYPE = 0x1022 # macro
269
+ CL_DEVICE_LOCAL_MEM_SIZE = 0x1023 # macro
270
+ CL_DEVICE_ERROR_CORRECTION_SUPPORT = 0x1024 # macro
271
+ CL_DEVICE_PROFILING_TIMER_RESOLUTION = 0x1025 # macro
272
+ CL_DEVICE_ENDIAN_LITTLE = 0x1026 # macro
273
+ CL_DEVICE_AVAILABLE = 0x1027 # macro
274
+ CL_DEVICE_COMPILER_AVAILABLE = 0x1028 # macro
275
+ CL_DEVICE_EXECUTION_CAPABILITIES = 0x1029 # macro
276
+ CL_DEVICE_QUEUE_PROPERTIES = 0x102A # macro
277
+ CL_DEVICE_QUEUE_ON_HOST_PROPERTIES = 0x102A # macro
278
+ CL_DEVICE_NAME = 0x102B # macro
279
+ CL_DEVICE_VENDOR = 0x102C # macro
280
+ CL_DRIVER_VERSION = 0x102D # macro
281
+ CL_DEVICE_PROFILE = 0x102E # macro
282
+ CL_DEVICE_VERSION = 0x102F # macro
283
+ CL_DEVICE_EXTENSIONS = 0x1030 # macro
284
+ CL_DEVICE_PLATFORM = 0x1031 # macro
285
+ CL_DEVICE_DOUBLE_FP_CONFIG = 0x1032 # macro
286
+ CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF = 0x1034 # macro
287
+ CL_DEVICE_HOST_UNIFIED_MEMORY = 0x1035 # macro
288
+ CL_DEVICE_NATIVE_VECTOR_WIDTH_CHAR = 0x1036 # macro
289
+ CL_DEVICE_NATIVE_VECTOR_WIDTH_SHORT = 0x1037 # macro
290
+ CL_DEVICE_NATIVE_VECTOR_WIDTH_INT = 0x1038 # macro
291
+ CL_DEVICE_NATIVE_VECTOR_WIDTH_LONG = 0x1039 # macro
292
+ CL_DEVICE_NATIVE_VECTOR_WIDTH_FLOAT = 0x103A # macro
293
+ CL_DEVICE_NATIVE_VECTOR_WIDTH_DOUBLE = 0x103B # macro
294
+ CL_DEVICE_NATIVE_VECTOR_WIDTH_HALF = 0x103C # macro
295
+ CL_DEVICE_OPENCL_C_VERSION = 0x103D # macro
296
+ CL_DEVICE_LINKER_AVAILABLE = 0x103E # macro
297
+ CL_DEVICE_BUILT_IN_KERNELS = 0x103F # macro
298
+ CL_DEVICE_IMAGE_MAX_BUFFER_SIZE = 0x1040 # macro
299
+ CL_DEVICE_IMAGE_MAX_ARRAY_SIZE = 0x1041 # macro
300
+ CL_DEVICE_PARENT_DEVICE = 0x1042 # macro
301
+ CL_DEVICE_PARTITION_MAX_SUB_DEVICES = 0x1043 # macro
302
+ CL_DEVICE_PARTITION_PROPERTIES = 0x1044 # macro
303
+ CL_DEVICE_PARTITION_AFFINITY_DOMAIN = 0x1045 # macro
304
+ CL_DEVICE_PARTITION_TYPE = 0x1046 # macro
305
+ CL_DEVICE_REFERENCE_COUNT = 0x1047 # macro
306
+ CL_DEVICE_PREFERRED_INTEROP_USER_SYNC = 0x1048 # macro
307
+ CL_DEVICE_PRINTF_BUFFER_SIZE = 0x1049 # macro
308
+ CL_DEVICE_IMAGE_PITCH_ALIGNMENT = 0x104A # macro
309
+ CL_DEVICE_IMAGE_BASE_ADDRESS_ALIGNMENT = 0x104B # macro
310
+ CL_DEVICE_MAX_READ_WRITE_IMAGE_ARGS = 0x104C # macro
311
+ CL_DEVICE_MAX_GLOBAL_VARIABLE_SIZE = 0x104D # macro
312
+ CL_DEVICE_QUEUE_ON_DEVICE_PROPERTIES = 0x104E # macro
313
+ CL_DEVICE_QUEUE_ON_DEVICE_PREFERRED_SIZE = 0x104F # macro
314
+ CL_DEVICE_QUEUE_ON_DEVICE_MAX_SIZE = 0x1050 # macro
315
+ CL_DEVICE_MAX_ON_DEVICE_QUEUES = 0x1051 # macro
316
+ CL_DEVICE_MAX_ON_DEVICE_EVENTS = 0x1052 # macro
317
+ CL_DEVICE_SVM_CAPABILITIES = 0x1053 # macro
318
+ CL_DEVICE_GLOBAL_VARIABLE_PREFERRED_TOTAL_SIZE = 0x1054 # macro
319
+ CL_DEVICE_MAX_PIPE_ARGS = 0x1055 # macro
320
+ CL_DEVICE_PIPE_MAX_ACTIVE_RESERVATIONS = 0x1056 # macro
321
+ CL_DEVICE_PIPE_MAX_PACKET_SIZE = 0x1057 # macro
322
+ CL_DEVICE_PREFERRED_PLATFORM_ATOMIC_ALIGNMENT = 0x1058 # macro
323
+ CL_DEVICE_PREFERRED_GLOBAL_ATOMIC_ALIGNMENT = 0x1059 # macro
324
+ CL_DEVICE_PREFERRED_LOCAL_ATOMIC_ALIGNMENT = 0x105A # macro
325
+ CL_DEVICE_IL_VERSION = 0x105B # macro
326
+ CL_DEVICE_MAX_NUM_SUB_GROUPS = 0x105C # macro
327
+ CL_DEVICE_SUB_GROUP_INDEPENDENT_FORWARD_PROGRESS = 0x105D # macro
328
+ CL_DEVICE_NUMERIC_VERSION = 0x105E # macro
329
+ CL_DEVICE_EXTENSIONS_WITH_VERSION = 0x1060 # macro
330
+ CL_DEVICE_ILS_WITH_VERSION = 0x1061 # macro
331
+ CL_DEVICE_BUILT_IN_KERNELS_WITH_VERSION = 0x1062 # macro
332
+ CL_DEVICE_ATOMIC_MEMORY_CAPABILITIES = 0x1063 # macro
333
+ CL_DEVICE_ATOMIC_FENCE_CAPABILITIES = 0x1064 # macro
334
+ CL_DEVICE_NON_UNIFORM_WORK_GROUP_SUPPORT = 0x1065 # macro
335
+ CL_DEVICE_OPENCL_C_ALL_VERSIONS = 0x1066 # macro
336
+ CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_MULTIPLE = 0x1067 # macro
337
+ CL_DEVICE_WORK_GROUP_COLLECTIVE_FUNCTIONS_SUPPORT = 0x1068 # macro
338
+ CL_DEVICE_GENERIC_ADDRESS_SPACE_SUPPORT = 0x1069 # macro
339
+ CL_DEVICE_OPENCL_C_FEATURES = 0x106F # macro
340
+ CL_DEVICE_DEVICE_ENQUEUE_CAPABILITIES = 0x1070 # macro
341
+ CL_DEVICE_PIPE_SUPPORT = 0x1071 # macro
342
+ CL_DEVICE_LATEST_CONFORMANCE_VERSION_PASSED = 0x1072 # macro
343
+ CL_FP_DENORM = (1<<0) # macro
344
+ CL_FP_INF_NAN = (1<<1) # macro
345
+ CL_FP_ROUND_TO_NEAREST = (1<<2) # macro
346
+ CL_FP_ROUND_TO_ZERO = (1<<3) # macro
347
+ CL_FP_ROUND_TO_INF = (1<<4) # macro
348
+ CL_FP_FMA = (1<<5) # macro
349
+ CL_FP_SOFT_FLOAT = (1<<6) # macro
350
+ CL_FP_CORRECTLY_ROUNDED_DIVIDE_SQRT = (1<<7) # macro
351
+ CL_NONE = 0x0 # macro
352
+ CL_READ_ONLY_CACHE = 0x1 # macro
353
+ CL_READ_WRITE_CACHE = 0x2 # macro
354
+ CL_LOCAL = 0x1 # macro
355
+ CL_GLOBAL = 0x2 # macro
356
+ CL_EXEC_KERNEL = (1<<0) # macro
357
+ CL_EXEC_NATIVE_KERNEL = (1<<1) # macro
358
+ CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE = (1<<0) # macro
359
+ CL_QUEUE_PROFILING_ENABLE = (1<<1) # macro
360
+ CL_QUEUE_ON_DEVICE = (1<<2) # macro
361
+ CL_QUEUE_ON_DEVICE_DEFAULT = (1<<3) # macro
362
+ CL_CONTEXT_REFERENCE_COUNT = 0x1080 # macro
363
+ CL_CONTEXT_DEVICES = 0x1081 # macro
364
+ CL_CONTEXT_PROPERTIES = 0x1082 # macro
365
+ CL_CONTEXT_NUM_DEVICES = 0x1083 # macro
366
+ CL_CONTEXT_PLATFORM = 0x1084 # macro
367
+ CL_CONTEXT_INTEROP_USER_SYNC = 0x1085 # macro
368
+ CL_DEVICE_PARTITION_EQUALLY = 0x1086 # macro
369
+ CL_DEVICE_PARTITION_BY_COUNTS = 0x1087 # macro
370
+ CL_DEVICE_PARTITION_BY_COUNTS_LIST_END = 0x0 # macro
371
+ CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN = 0x1088 # macro
372
+ CL_DEVICE_AFFINITY_DOMAIN_NUMA = (1<<0) # macro
373
+ CL_DEVICE_AFFINITY_DOMAIN_L4_CACHE = (1<<1) # macro
374
+ CL_DEVICE_AFFINITY_DOMAIN_L3_CACHE = (1<<2) # macro
375
+ CL_DEVICE_AFFINITY_DOMAIN_L2_CACHE = (1<<3) # macro
376
+ CL_DEVICE_AFFINITY_DOMAIN_L1_CACHE = (1<<4) # macro
377
+ CL_DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE = (1<<5) # macro
378
+ CL_DEVICE_SVM_COARSE_GRAIN_BUFFER = (1<<0) # macro
379
+ CL_DEVICE_SVM_FINE_GRAIN_BUFFER = (1<<1) # macro
380
+ CL_DEVICE_SVM_FINE_GRAIN_SYSTEM = (1<<2) # macro
381
+ CL_DEVICE_SVM_ATOMICS = (1<<3) # macro
382
+ CL_QUEUE_CONTEXT = 0x1090 # macro
383
+ CL_QUEUE_DEVICE = 0x1091 # macro
384
+ CL_QUEUE_REFERENCE_COUNT = 0x1092 # macro
385
+ CL_QUEUE_PROPERTIES = 0x1093 # macro
386
+ CL_QUEUE_SIZE = 0x1094 # macro
387
+ CL_QUEUE_DEVICE_DEFAULT = 0x1095 # macro
388
+ CL_QUEUE_PROPERTIES_ARRAY = 0x1098 # macro
389
+ CL_MEM_READ_WRITE = (1<<0) # macro
390
+ CL_MEM_WRITE_ONLY = (1<<1) # macro
391
+ CL_MEM_READ_ONLY = (1<<2) # macro
392
+ CL_MEM_USE_HOST_PTR = (1<<3) # macro
393
+ CL_MEM_ALLOC_HOST_PTR = (1<<4) # macro
394
+ CL_MEM_COPY_HOST_PTR = (1<<5) # macro
395
+ CL_MEM_HOST_WRITE_ONLY = (1<<7) # macro
396
+ CL_MEM_HOST_READ_ONLY = (1<<8) # macro
397
+ CL_MEM_HOST_NO_ACCESS = (1<<9) # macro
398
+ CL_MEM_SVM_FINE_GRAIN_BUFFER = (1<<10) # macro
399
+ CL_MEM_SVM_ATOMICS = (1<<11) # macro
400
+ CL_MEM_KERNEL_READ_AND_WRITE = (1<<12) # macro
401
+ CL_MIGRATE_MEM_OBJECT_HOST = (1<<0) # macro
402
+ CL_MIGRATE_MEM_OBJECT_CONTENT_UNDEFINED = (1<<1) # macro
403
+ CL_R = 0x10B0 # macro
404
+ CL_A = 0x10B1 # macro
405
+ CL_RG = 0x10B2 # macro
406
+ CL_RA = 0x10B3 # macro
407
+ CL_RGB = 0x10B4 # macro
408
+ CL_RGBA = 0x10B5 # macro
409
+ CL_BGRA = 0x10B6 # macro
410
+ CL_ARGB = 0x10B7 # macro
411
+ CL_INTENSITY = 0x10B8 # macro
412
+ CL_LUMINANCE = 0x10B9 # macro
413
+ CL_Rx = 0x10BA # macro
414
+ CL_RGx = 0x10BB # macro
415
+ CL_RGBx = 0x10BC # macro
416
+ CL_DEPTH = 0x10BD # macro
417
+ CL_DEPTH_STENCIL = 0x10BE # macro
418
+ CL_sRGB = 0x10BF # macro
419
+ CL_sRGBx = 0x10C0 # macro
420
+ CL_sRGBA = 0x10C1 # macro
421
+ CL_sBGRA = 0x10C2 # macro
422
+ CL_ABGR = 0x10C3 # macro
423
+ CL_SNORM_INT8 = 0x10D0 # macro
424
+ CL_SNORM_INT16 = 0x10D1 # macro
425
+ CL_UNORM_INT8 = 0x10D2 # macro
426
+ CL_UNORM_INT16 = 0x10D3 # macro
427
+ CL_UNORM_SHORT_565 = 0x10D4 # macro
428
+ CL_UNORM_SHORT_555 = 0x10D5 # macro
429
+ CL_UNORM_INT_101010 = 0x10D6 # macro
430
+ CL_SIGNED_INT8 = 0x10D7 # macro
431
+ CL_SIGNED_INT16 = 0x10D8 # macro
432
+ CL_SIGNED_INT32 = 0x10D9 # macro
433
+ CL_UNSIGNED_INT8 = 0x10DA # macro
434
+ CL_UNSIGNED_INT16 = 0x10DB # macro
435
+ CL_UNSIGNED_INT32 = 0x10DC # macro
436
+ CL_HALF_FLOAT = 0x10DD # macro
437
+ CL_FLOAT = 0x10DE # macro
438
+ CL_UNORM_INT24 = 0x10DF # macro
439
+ CL_UNORM_INT_101010_2 = 0x10E0 # macro
440
+ CL_MEM_OBJECT_BUFFER = 0x10F0 # macro
441
+ CL_MEM_OBJECT_IMAGE2D = 0x10F1 # macro
442
+ CL_MEM_OBJECT_IMAGE3D = 0x10F2 # macro
443
+ CL_MEM_OBJECT_IMAGE2D_ARRAY = 0x10F3 # macro
444
+ CL_MEM_OBJECT_IMAGE1D = 0x10F4 # macro
445
+ CL_MEM_OBJECT_IMAGE1D_ARRAY = 0x10F5 # macro
446
+ CL_MEM_OBJECT_IMAGE1D_BUFFER = 0x10F6 # macro
447
+ CL_MEM_OBJECT_PIPE = 0x10F7 # macro
448
+ CL_MEM_TYPE = 0x1100 # macro
449
+ CL_MEM_FLAGS = 0x1101 # macro
450
+ CL_MEM_SIZE = 0x1102 # macro
451
+ CL_MEM_HOST_PTR = 0x1103 # macro
452
+ CL_MEM_MAP_COUNT = 0x1104 # macro
453
+ CL_MEM_REFERENCE_COUNT = 0x1105 # macro
454
+ CL_MEM_CONTEXT = 0x1106 # macro
455
+ CL_MEM_ASSOCIATED_MEMOBJECT = 0x1107 # macro
456
+ CL_MEM_OFFSET = 0x1108 # macro
457
+ CL_MEM_USES_SVM_POINTER = 0x1109 # macro
458
+ CL_MEM_PROPERTIES = 0x110A # macro
459
+ CL_IMAGE_FORMAT = 0x1110 # macro
460
+ CL_IMAGE_ELEMENT_SIZE = 0x1111 # macro
461
+ CL_IMAGE_ROW_PITCH = 0x1112 # macro
462
+ CL_IMAGE_SLICE_PITCH = 0x1113 # macro
463
+ CL_IMAGE_WIDTH = 0x1114 # macro
464
+ CL_IMAGE_HEIGHT = 0x1115 # macro
465
+ CL_IMAGE_DEPTH = 0x1116 # macro
466
+ CL_IMAGE_ARRAY_SIZE = 0x1117 # macro
467
+ CL_IMAGE_BUFFER = 0x1118 # macro
468
+ CL_IMAGE_NUM_MIP_LEVELS = 0x1119 # macro
469
+ CL_IMAGE_NUM_SAMPLES = 0x111A # macro
470
+ CL_PIPE_PACKET_SIZE = 0x1120 # macro
471
+ CL_PIPE_MAX_PACKETS = 0x1121 # macro
472
+ CL_PIPE_PROPERTIES = 0x1122 # macro
473
+ CL_ADDRESS_NONE = 0x1130 # macro
474
+ CL_ADDRESS_CLAMP_TO_EDGE = 0x1131 # macro
475
+ CL_ADDRESS_CLAMP = 0x1132 # macro
476
+ CL_ADDRESS_REPEAT = 0x1133 # macro
477
+ CL_ADDRESS_MIRRORED_REPEAT = 0x1134 # macro
478
+ CL_FILTER_NEAREST = 0x1140 # macro
479
+ CL_FILTER_LINEAR = 0x1141 # macro
480
+ CL_SAMPLER_REFERENCE_COUNT = 0x1150 # macro
481
+ CL_SAMPLER_CONTEXT = 0x1151 # macro
482
+ CL_SAMPLER_NORMALIZED_COORDS = 0x1152 # macro
483
+ CL_SAMPLER_ADDRESSING_MODE = 0x1153 # macro
484
+ CL_SAMPLER_FILTER_MODE = 0x1154 # macro
485
+ CL_SAMPLER_MIP_FILTER_MODE = 0x1155 # macro
486
+ CL_SAMPLER_LOD_MIN = 0x1156 # macro
487
+ CL_SAMPLER_LOD_MAX = 0x1157 # macro
488
+ CL_SAMPLER_PROPERTIES = 0x1158 # macro
489
+ CL_MAP_READ = (1<<0) # macro
490
+ CL_MAP_WRITE = (1<<1) # macro
491
+ CL_MAP_WRITE_INVALIDATE_REGION = (1<<2) # macro
492
+ CL_PROGRAM_REFERENCE_COUNT = 0x1160 # macro
493
+ CL_PROGRAM_CONTEXT = 0x1161 # macro
494
+ CL_PROGRAM_NUM_DEVICES = 0x1162 # macro
495
+ CL_PROGRAM_DEVICES = 0x1163 # macro
496
+ CL_PROGRAM_SOURCE = 0x1164 # macro
497
+ CL_PROGRAM_BINARY_SIZES = 0x1165 # macro
498
+ CL_PROGRAM_BINARIES = 0x1166 # macro
499
+ CL_PROGRAM_NUM_KERNELS = 0x1167 # macro
500
+ CL_PROGRAM_KERNEL_NAMES = 0x1168 # macro
501
+ CL_PROGRAM_IL = 0x1169 # macro
502
+ CL_PROGRAM_SCOPE_GLOBAL_CTORS_PRESENT = 0x116A # macro
503
+ CL_PROGRAM_SCOPE_GLOBAL_DTORS_PRESENT = 0x116B # macro
504
+ CL_PROGRAM_BUILD_STATUS = 0x1181 # macro
505
+ CL_PROGRAM_BUILD_OPTIONS = 0x1182 # macro
506
+ CL_PROGRAM_BUILD_LOG = 0x1183 # macro
507
+ CL_PROGRAM_BINARY_TYPE = 0x1184 # macro
508
+ CL_PROGRAM_BUILD_GLOBAL_VARIABLE_TOTAL_SIZE = 0x1185 # macro
509
+ CL_PROGRAM_BINARY_TYPE_NONE = 0x0 # macro
510
+ CL_PROGRAM_BINARY_TYPE_COMPILED_OBJECT = 0x1 # macro
511
+ CL_PROGRAM_BINARY_TYPE_LIBRARY = 0x2 # macro
512
+ CL_PROGRAM_BINARY_TYPE_EXECUTABLE = 0x4 # macro
513
+ CL_BUILD_SUCCESS = 0 # macro
514
+ CL_BUILD_NONE = -1 # macro
515
+ CL_BUILD_ERROR = -2 # macro
516
+ CL_BUILD_IN_PROGRESS = -3 # macro
517
+ CL_KERNEL_FUNCTION_NAME = 0x1190 # macro
518
+ CL_KERNEL_NUM_ARGS = 0x1191 # macro
519
+ CL_KERNEL_REFERENCE_COUNT = 0x1192 # macro
520
+ CL_KERNEL_CONTEXT = 0x1193 # macro
521
+ CL_KERNEL_PROGRAM = 0x1194 # macro
522
+ CL_KERNEL_ATTRIBUTES = 0x1195 # macro
523
+ CL_KERNEL_ARG_ADDRESS_QUALIFIER = 0x1196 # macro
524
+ CL_KERNEL_ARG_ACCESS_QUALIFIER = 0x1197 # macro
525
+ CL_KERNEL_ARG_TYPE_NAME = 0x1198 # macro
526
+ CL_KERNEL_ARG_TYPE_QUALIFIER = 0x1199 # macro
527
+ CL_KERNEL_ARG_NAME = 0x119A # macro
528
+ CL_KERNEL_ARG_ADDRESS_GLOBAL = 0x119B # macro
529
+ CL_KERNEL_ARG_ADDRESS_LOCAL = 0x119C # macro
530
+ CL_KERNEL_ARG_ADDRESS_CONSTANT = 0x119D # macro
531
+ CL_KERNEL_ARG_ADDRESS_PRIVATE = 0x119E # macro
532
+ CL_KERNEL_ARG_ACCESS_READ_ONLY = 0x11A0 # macro
533
+ CL_KERNEL_ARG_ACCESS_WRITE_ONLY = 0x11A1 # macro
534
+ CL_KERNEL_ARG_ACCESS_READ_WRITE = 0x11A2 # macro
535
+ CL_KERNEL_ARG_ACCESS_NONE = 0x11A3 # macro
536
+ CL_KERNEL_ARG_TYPE_NONE = 0 # macro
537
+ CL_KERNEL_ARG_TYPE_CONST = (1<<0) # macro
538
+ CL_KERNEL_ARG_TYPE_RESTRICT = (1<<1) # macro
539
+ CL_KERNEL_ARG_TYPE_VOLATILE = (1<<2) # macro
540
+ CL_KERNEL_ARG_TYPE_PIPE = (1<<3) # macro
541
+ CL_KERNEL_WORK_GROUP_SIZE = 0x11B0 # macro
542
+ CL_KERNEL_COMPILE_WORK_GROUP_SIZE = 0x11B1 # macro
543
+ CL_KERNEL_LOCAL_MEM_SIZE = 0x11B2 # macro
544
+ CL_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE = 0x11B3 # macro
545
+ CL_KERNEL_PRIVATE_MEM_SIZE = 0x11B4 # macro
546
+ CL_KERNEL_GLOBAL_WORK_SIZE = 0x11B5 # macro
547
+ CL_KERNEL_MAX_SUB_GROUP_SIZE_FOR_NDRANGE = 0x2033 # macro
548
+ CL_KERNEL_SUB_GROUP_COUNT_FOR_NDRANGE = 0x2034 # macro
549
+ CL_KERNEL_LOCAL_SIZE_FOR_SUB_GROUP_COUNT = 0x11B8 # macro
550
+ CL_KERNEL_MAX_NUM_SUB_GROUPS = 0x11B9 # macro
551
+ CL_KERNEL_COMPILE_NUM_SUB_GROUPS = 0x11BA # macro
552
+ CL_KERNEL_EXEC_INFO_SVM_PTRS = 0x11B6 # macro
553
+ CL_KERNEL_EXEC_INFO_SVM_FINE_GRAIN_SYSTEM = 0x11B7 # macro
554
+ CL_EVENT_COMMAND_QUEUE = 0x11D0 # macro
555
+ CL_EVENT_COMMAND_TYPE = 0x11D1 # macro
556
+ CL_EVENT_REFERENCE_COUNT = 0x11D2 # macro
557
+ CL_EVENT_COMMAND_EXECUTION_STATUS = 0x11D3 # macro
558
+ CL_EVENT_CONTEXT = 0x11D4 # macro
559
+ CL_COMMAND_NDRANGE_KERNEL = 0x11F0 # macro
560
+ CL_COMMAND_TASK = 0x11F1 # macro
561
+ CL_COMMAND_NATIVE_KERNEL = 0x11F2 # macro
562
+ CL_COMMAND_READ_BUFFER = 0x11F3 # macro
563
+ CL_COMMAND_WRITE_BUFFER = 0x11F4 # macro
564
+ CL_COMMAND_COPY_BUFFER = 0x11F5 # macro
565
+ CL_COMMAND_READ_IMAGE = 0x11F6 # macro
566
+ CL_COMMAND_WRITE_IMAGE = 0x11F7 # macro
567
+ CL_COMMAND_COPY_IMAGE = 0x11F8 # macro
568
+ CL_COMMAND_COPY_IMAGE_TO_BUFFER = 0x11F9 # macro
569
+ CL_COMMAND_COPY_BUFFER_TO_IMAGE = 0x11FA # macro
570
+ CL_COMMAND_MAP_BUFFER = 0x11FB # macro
571
+ CL_COMMAND_MAP_IMAGE = 0x11FC # macro
572
+ CL_COMMAND_UNMAP_MEM_OBJECT = 0x11FD # macro
573
+ CL_COMMAND_MARKER = 0x11FE # macro
574
+ CL_COMMAND_ACQUIRE_GL_OBJECTS = 0x11FF # macro
575
+ CL_COMMAND_RELEASE_GL_OBJECTS = 0x1200 # macro
576
+ CL_COMMAND_READ_BUFFER_RECT = 0x1201 # macro
577
+ CL_COMMAND_WRITE_BUFFER_RECT = 0x1202 # macro
578
+ CL_COMMAND_COPY_BUFFER_RECT = 0x1203 # macro
579
+ CL_COMMAND_USER = 0x1204 # macro
580
+ CL_COMMAND_BARRIER = 0x1205 # macro
581
+ CL_COMMAND_MIGRATE_MEM_OBJECTS = 0x1206 # macro
582
+ CL_COMMAND_FILL_BUFFER = 0x1207 # macro
583
+ CL_COMMAND_FILL_IMAGE = 0x1208 # macro
584
+ CL_COMMAND_SVM_FREE = 0x1209 # macro
585
+ CL_COMMAND_SVM_MEMCPY = 0x120A # macro
586
+ CL_COMMAND_SVM_MEMFILL = 0x120B # macro
587
+ CL_COMMAND_SVM_MAP = 0x120C # macro
588
+ CL_COMMAND_SVM_UNMAP = 0x120D # macro
589
+ CL_COMMAND_SVM_MIGRATE_MEM = 0x120E # macro
590
+ CL_COMPLETE = 0x0 # macro
591
+ CL_RUNNING = 0x1 # macro
592
+ CL_SUBMITTED = 0x2 # macro
593
+ CL_QUEUED = 0x3 # macro
594
+ CL_BUFFER_CREATE_TYPE_REGION = 0x1220 # macro
595
+ CL_PROFILING_COMMAND_QUEUED = 0x1280 # macro
596
+ CL_PROFILING_COMMAND_SUBMIT = 0x1281 # macro
597
+ CL_PROFILING_COMMAND_START = 0x1282 # macro
598
+ CL_PROFILING_COMMAND_END = 0x1283 # macro
599
+ CL_PROFILING_COMMAND_COMPLETE = 0x1284 # macro
600
+ CL_DEVICE_ATOMIC_ORDER_RELAXED = (1<<0) # macro
601
+ CL_DEVICE_ATOMIC_ORDER_ACQ_REL = (1<<1) # macro
602
+ CL_DEVICE_ATOMIC_ORDER_SEQ_CST = (1<<2) # macro
603
+ CL_DEVICE_ATOMIC_SCOPE_WORK_ITEM = (1<<3) # macro
604
+ CL_DEVICE_ATOMIC_SCOPE_WORK_GROUP = (1<<4) # macro
605
+ CL_DEVICE_ATOMIC_SCOPE_DEVICE = (1<<5) # macro
606
+ CL_DEVICE_ATOMIC_SCOPE_ALL_DEVICES = (1<<6) # macro
607
+ CL_DEVICE_QUEUE_SUPPORTED = (1<<0) # macro
608
+ CL_DEVICE_QUEUE_REPLACEABLE_DEFAULT = (1<<1) # macro
609
+ CL_KHRONOS_VENDOR_ID_CODEPLAY = 0x10004 # macro
610
+ CL_VERSION_MAJOR_BITS = (10) # macro
611
+ CL_VERSION_MINOR_BITS = (10) # macro
612
+ CL_VERSION_PATCH_BITS = (12) # macro
613
+ # CL_VERSION_MAJOR_MASK = ((1<<(10)) # macro
614
+ # CL_VERSION_MINOR_MASK = ((1<<(10)) # macro
615
+ # CL_VERSION_PATCH_MASK = ((1<<(12)) # macro
616
+ # def CL_VERSION_MAJOR(version): # macro
617
+ # return ((version)>>((10)+(12)))
618
+ # def CL_VERSION_MINOR(version): # macro
619
+ # return (((version)>>(12))&((1<<(10)))
620
+ # def CL_VERSION_PATCH(version): # macro
621
+ # return ((version)&((1<<(12)))
622
+ # def CL_MAKE_VERSION(major, minor, patch): # macro
623
+ # return ((((major)&((1<<(10)))<<((10)+(12)))|(((minor)&((1<<(10)))<<(12))|((patch)&((1<<(12))))
624
+ class struct__cl_platform_id(Structure):
625
+ pass
626
+
627
+ cl_platform_id = ctypes.POINTER(struct__cl_platform_id)
628
+ class struct__cl_device_id(Structure):
629
+ pass
630
+
631
+ cl_device_id = ctypes.POINTER(struct__cl_device_id)
632
+ class struct__cl_context(Structure):
633
+ pass
634
+
635
+ cl_context = ctypes.POINTER(struct__cl_context)
636
+ class struct__cl_command_queue(Structure):
637
+ pass
638
+
639
+ cl_command_queue = ctypes.POINTER(struct__cl_command_queue)
640
+ class struct__cl_mem(Structure):
641
+ pass
642
+
643
+ cl_mem = ctypes.POINTER(struct__cl_mem)
644
+ class struct__cl_program(Structure):
645
+ pass
646
+
647
+ cl_program = ctypes.POINTER(struct__cl_program)
648
+ class struct__cl_kernel(Structure):
649
+ pass
650
+
651
+ cl_kernel = ctypes.POINTER(struct__cl_kernel)
652
+ class struct__cl_event(Structure):
653
+ pass
654
+
655
+ cl_event = ctypes.POINTER(struct__cl_event)
656
+ class struct__cl_sampler(Structure):
657
+ pass
658
+
659
+ cl_sampler = ctypes.POINTER(struct__cl_sampler)
660
+ cl_bool = ctypes.c_uint32
661
+ cl_bitfield = ctypes.c_uint64
662
+ cl_properties = ctypes.c_uint64
663
+ cl_device_type = ctypes.c_uint64
664
+ cl_platform_info = ctypes.c_uint32
665
+ cl_device_info = ctypes.c_uint32
666
+ cl_device_fp_config = ctypes.c_uint64
667
+ cl_device_mem_cache_type = ctypes.c_uint32
668
+ cl_device_local_mem_type = ctypes.c_uint32
669
+ cl_device_exec_capabilities = ctypes.c_uint64
670
+ cl_device_svm_capabilities = ctypes.c_uint64
671
+ cl_command_queue_properties = ctypes.c_uint64
672
+ cl_device_partition_property = ctypes.c_int64
673
+ cl_device_affinity_domain = ctypes.c_uint64
674
+ cl_context_properties = ctypes.c_int64
675
+ cl_context_info = ctypes.c_uint32
676
+ cl_queue_properties = ctypes.c_uint64
677
+ cl_command_queue_info = ctypes.c_uint32
678
+ cl_channel_order = ctypes.c_uint32
679
+ cl_channel_type = ctypes.c_uint32
680
+ cl_mem_flags = ctypes.c_uint64
681
+ cl_svm_mem_flags = ctypes.c_uint64
682
+ cl_mem_object_type = ctypes.c_uint32
683
+ cl_mem_info = ctypes.c_uint32
684
+ cl_mem_migration_flags = ctypes.c_uint64
685
+ cl_image_info = ctypes.c_uint32
686
+ cl_buffer_create_type = ctypes.c_uint32
687
+ cl_addressing_mode = ctypes.c_uint32
688
+ cl_filter_mode = ctypes.c_uint32
689
+ cl_sampler_info = ctypes.c_uint32
690
+ cl_map_flags = ctypes.c_uint64
691
+ cl_pipe_properties = ctypes.c_int64
692
+ cl_pipe_info = ctypes.c_uint32
693
+ cl_program_info = ctypes.c_uint32
694
+ cl_program_build_info = ctypes.c_uint32
695
+ cl_program_binary_type = ctypes.c_uint32
696
+ cl_build_status = ctypes.c_int32
697
+ cl_kernel_info = ctypes.c_uint32
698
+ cl_kernel_arg_info = ctypes.c_uint32
699
+ cl_kernel_arg_address_qualifier = ctypes.c_uint32
700
+ cl_kernel_arg_access_qualifier = ctypes.c_uint32
701
+ cl_kernel_arg_type_qualifier = ctypes.c_uint64
702
+ cl_kernel_work_group_info = ctypes.c_uint32
703
+ cl_kernel_sub_group_info = ctypes.c_uint32
704
+ cl_event_info = ctypes.c_uint32
705
+ cl_command_type = ctypes.c_uint32
706
+ cl_profiling_info = ctypes.c_uint32
707
+ cl_sampler_properties = ctypes.c_uint64
708
+ cl_kernel_exec_info = ctypes.c_uint32
709
+ cl_device_atomic_capabilities = ctypes.c_uint64
710
+ cl_device_device_enqueue_capabilities = ctypes.c_uint64
711
+ cl_khronos_vendor_id = ctypes.c_uint32
712
+ cl_mem_properties = ctypes.c_uint64
713
+ cl_version = ctypes.c_uint32
714
+ class struct__cl_image_format(Structure):
715
+ pass
716
+
717
+ struct__cl_image_format._pack_ = 1 # source:False
718
+ struct__cl_image_format._fields_ = [
719
+ ('image_channel_order', ctypes.c_uint32),
720
+ ('image_channel_data_type', ctypes.c_uint32),
721
+ ]
722
+
723
+ cl_image_format = struct__cl_image_format
724
+ class struct__cl_image_desc(Structure):
725
+ pass
726
+
727
+ class union__cl_image_desc_0(Union):
728
+ pass
729
+
730
+ union__cl_image_desc_0._pack_ = 1 # source:False
731
+ union__cl_image_desc_0._fields_ = [
732
+ ('buffer', ctypes.POINTER(struct__cl_mem)),
733
+ ('mem_object', ctypes.POINTER(struct__cl_mem)),
734
+ ]
735
+
736
+ struct__cl_image_desc._pack_ = 1 # source:False
737
+ struct__cl_image_desc._anonymous_ = ('_0',)
738
+ struct__cl_image_desc._fields_ = [
739
+ ('image_type', ctypes.c_uint32),
740
+ ('PADDING_0', ctypes.c_ubyte * 4),
741
+ ('image_width', ctypes.c_uint64),
742
+ ('image_height', ctypes.c_uint64),
743
+ ('image_depth', ctypes.c_uint64),
744
+ ('image_array_size', ctypes.c_uint64),
745
+ ('image_row_pitch', ctypes.c_uint64),
746
+ ('image_slice_pitch', ctypes.c_uint64),
747
+ ('num_mip_levels', ctypes.c_uint32),
748
+ ('num_samples', ctypes.c_uint32),
749
+ ('_0', union__cl_image_desc_0),
750
+ ]
751
+
752
+ cl_image_desc = struct__cl_image_desc
753
+ class struct__cl_buffer_region(Structure):
754
+ pass
755
+
756
+ struct__cl_buffer_region._pack_ = 1 # source:False
757
+ struct__cl_buffer_region._fields_ = [
758
+ ('origin', ctypes.c_uint64),
759
+ ('size', ctypes.c_uint64),
760
+ ]
761
+
762
+ cl_buffer_region = struct__cl_buffer_region
763
+ class struct__cl_name_version(Structure):
764
+ pass
765
+
766
+ struct__cl_name_version._pack_ = 1 # source:False
767
+ struct__cl_name_version._fields_ = [
768
+ ('version', ctypes.c_uint32),
769
+ ('name', ctypes.c_char * 64),
770
+ ]
771
+
772
+ cl_name_version = struct__cl_name_version
773
+ cl_int = ctypes.c_int32
774
+ cl_uint = ctypes.c_uint32
775
+ try:
776
+ clGetPlatformIDs = _libraries['libOpenCL.so.1'].clGetPlatformIDs
777
+ clGetPlatformIDs.restype = cl_int
778
+ clGetPlatformIDs.argtypes = [cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_platform_id)), ctypes.POINTER(ctypes.c_uint32)]
779
+ except AttributeError:
780
+ pass
781
+ size_t = ctypes.c_uint64
782
+ try:
783
+ clGetPlatformInfo = _libraries['libOpenCL.so.1'].clGetPlatformInfo
784
+ clGetPlatformInfo.restype = cl_int
785
+ clGetPlatformInfo.argtypes = [cl_platform_id, cl_platform_info, size_t, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_uint64)]
786
+ except AttributeError:
787
+ pass
788
+ try:
789
+ clGetDeviceIDs = _libraries['libOpenCL.so.1'].clGetDeviceIDs
790
+ clGetDeviceIDs.restype = cl_int
791
+ clGetDeviceIDs.argtypes = [cl_platform_id, cl_device_type, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_device_id)), ctypes.POINTER(ctypes.c_uint32)]
792
+ except AttributeError:
793
+ pass
794
+ try:
795
+ clGetDeviceInfo = _libraries['libOpenCL.so.1'].clGetDeviceInfo
796
+ clGetDeviceInfo.restype = cl_int
797
+ clGetDeviceInfo.argtypes = [cl_device_id, cl_device_info, size_t, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_uint64)]
798
+ except AttributeError:
799
+ pass
800
+ try:
801
+ clCreateSubDevices = _libraries['libOpenCL.so.1'].clCreateSubDevices
802
+ clCreateSubDevices.restype = cl_int
803
+ clCreateSubDevices.argtypes = [cl_device_id, ctypes.POINTER(ctypes.c_int64), cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_device_id)), ctypes.POINTER(ctypes.c_uint32)]
804
+ except AttributeError:
805
+ pass
806
+ try:
807
+ clRetainDevice = _libraries['libOpenCL.so.1'].clRetainDevice
808
+ clRetainDevice.restype = cl_int
809
+ clRetainDevice.argtypes = [cl_device_id]
810
+ except AttributeError:
811
+ pass
812
+ try:
813
+ clReleaseDevice = _libraries['libOpenCL.so.1'].clReleaseDevice
814
+ clReleaseDevice.restype = cl_int
815
+ clReleaseDevice.argtypes = [cl_device_id]
816
+ except AttributeError:
817
+ pass
818
+ try:
819
+ clSetDefaultDeviceCommandQueue = _libraries['libOpenCL.so.1'].clSetDefaultDeviceCommandQueue
820
+ clSetDefaultDeviceCommandQueue.restype = cl_int
821
+ clSetDefaultDeviceCommandQueue.argtypes = [cl_context, cl_device_id, cl_command_queue]
822
+ except AttributeError:
823
+ pass
824
+ try:
825
+ clGetDeviceAndHostTimer = _libraries['libOpenCL.so.1'].clGetDeviceAndHostTimer
826
+ clGetDeviceAndHostTimer.restype = cl_int
827
+ clGetDeviceAndHostTimer.argtypes = [cl_device_id, ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_uint64)]
828
+ except AttributeError:
829
+ pass
830
+ try:
831
+ clGetHostTimer = _libraries['libOpenCL.so.1'].clGetHostTimer
832
+ clGetHostTimer.restype = cl_int
833
+ clGetHostTimer.argtypes = [cl_device_id, ctypes.POINTER(ctypes.c_uint64)]
834
+ except AttributeError:
835
+ pass
836
+ try:
837
+ clCreateContext = _libraries['libOpenCL.so.1'].clCreateContext
838
+ clCreateContext.restype = cl_context
839
+ clCreateContext.argtypes = [ctypes.POINTER(ctypes.c_int64), cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_device_id)), ctypes.CFUNCTYPE(None, ctypes.POINTER(ctypes.c_char), ctypes.POINTER(None), ctypes.c_uint64, ctypes.POINTER(None)), ctypes.POINTER(None), ctypes.POINTER(ctypes.c_int32)]
840
+ except AttributeError:
841
+ pass
842
+ try:
843
+ clCreateContextFromType = _libraries['libOpenCL.so.1'].clCreateContextFromType
844
+ clCreateContextFromType.restype = cl_context
845
+ clCreateContextFromType.argtypes = [ctypes.POINTER(ctypes.c_int64), cl_device_type, ctypes.CFUNCTYPE(None, ctypes.POINTER(ctypes.c_char), ctypes.POINTER(None), ctypes.c_uint64, ctypes.POINTER(None)), ctypes.POINTER(None), ctypes.POINTER(ctypes.c_int32)]
846
+ except AttributeError:
847
+ pass
848
+ try:
849
+ clRetainContext = _libraries['libOpenCL.so.1'].clRetainContext
850
+ clRetainContext.restype = cl_int
851
+ clRetainContext.argtypes = [cl_context]
852
+ except AttributeError:
853
+ pass
854
+ try:
855
+ clReleaseContext = _libraries['libOpenCL.so.1'].clReleaseContext
856
+ clReleaseContext.restype = cl_int
857
+ clReleaseContext.argtypes = [cl_context]
858
+ except AttributeError:
859
+ pass
860
+ try:
861
+ clGetContextInfo = _libraries['libOpenCL.so.1'].clGetContextInfo
862
+ clGetContextInfo.restype = cl_int
863
+ clGetContextInfo.argtypes = [cl_context, cl_context_info, size_t, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_uint64)]
864
+ except AttributeError:
865
+ pass
866
+ try:
867
+ clSetContextDestructorCallback = _libraries['libOpenCL.so.1'].clSetContextDestructorCallback
868
+ clSetContextDestructorCallback.restype = cl_int
869
+ clSetContextDestructorCallback.argtypes = [cl_context, ctypes.CFUNCTYPE(None, ctypes.POINTER(struct__cl_context), ctypes.POINTER(None)), ctypes.POINTER(None)]
870
+ except AttributeError:
871
+ pass
872
+ try:
873
+ clCreateCommandQueueWithProperties = _libraries['libOpenCL.so.1'].clCreateCommandQueueWithProperties
874
+ clCreateCommandQueueWithProperties.restype = cl_command_queue
875
+ clCreateCommandQueueWithProperties.argtypes = [cl_context, cl_device_id, ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_int32)]
876
+ except AttributeError:
877
+ pass
878
+ try:
879
+ clRetainCommandQueue = _libraries['libOpenCL.so.1'].clRetainCommandQueue
880
+ clRetainCommandQueue.restype = cl_int
881
+ clRetainCommandQueue.argtypes = [cl_command_queue]
882
+ except AttributeError:
883
+ pass
884
+ try:
885
+ clReleaseCommandQueue = _libraries['libOpenCL.so.1'].clReleaseCommandQueue
886
+ clReleaseCommandQueue.restype = cl_int
887
+ clReleaseCommandQueue.argtypes = [cl_command_queue]
888
+ except AttributeError:
889
+ pass
890
+ try:
891
+ clGetCommandQueueInfo = _libraries['libOpenCL.so.1'].clGetCommandQueueInfo
892
+ clGetCommandQueueInfo.restype = cl_int
893
+ clGetCommandQueueInfo.argtypes = [cl_command_queue, cl_command_queue_info, size_t, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_uint64)]
894
+ except AttributeError:
895
+ pass
896
+ try:
897
+ clCreateBuffer = _libraries['libOpenCL.so.1'].clCreateBuffer
898
+ clCreateBuffer.restype = cl_mem
899
+ clCreateBuffer.argtypes = [cl_context, cl_mem_flags, size_t, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_int32)]
900
+ except AttributeError:
901
+ pass
902
+ try:
903
+ clCreateSubBuffer = _libraries['libOpenCL.so.1'].clCreateSubBuffer
904
+ clCreateSubBuffer.restype = cl_mem
905
+ clCreateSubBuffer.argtypes = [cl_mem, cl_mem_flags, cl_buffer_create_type, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_int32)]
906
+ except AttributeError:
907
+ pass
908
+ try:
909
+ clCreateImage = _libraries['libOpenCL.so.1'].clCreateImage
910
+ clCreateImage.restype = cl_mem
911
+ clCreateImage.argtypes = [cl_context, cl_mem_flags, ctypes.POINTER(struct__cl_image_format), ctypes.POINTER(struct__cl_image_desc), ctypes.POINTER(None), ctypes.POINTER(ctypes.c_int32)]
912
+ except AttributeError:
913
+ pass
914
+ try:
915
+ clCreatePipe = _libraries['libOpenCL.so.1'].clCreatePipe
916
+ clCreatePipe.restype = cl_mem
917
+ clCreatePipe.argtypes = [cl_context, cl_mem_flags, cl_uint, cl_uint, ctypes.POINTER(ctypes.c_int64), ctypes.POINTER(ctypes.c_int32)]
918
+ except AttributeError:
919
+ pass
920
+ try:
921
+ clCreateBufferWithProperties = _libraries['libOpenCL.so.1'].clCreateBufferWithProperties
922
+ clCreateBufferWithProperties.restype = cl_mem
923
+ clCreateBufferWithProperties.argtypes = [cl_context, ctypes.POINTER(ctypes.c_uint64), cl_mem_flags, size_t, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_int32)]
924
+ except AttributeError:
925
+ pass
926
+ try:
927
+ clCreateImageWithProperties = _libraries['libOpenCL.so.1'].clCreateImageWithProperties
928
+ clCreateImageWithProperties.restype = cl_mem
929
+ clCreateImageWithProperties.argtypes = [cl_context, ctypes.POINTER(ctypes.c_uint64), cl_mem_flags, ctypes.POINTER(struct__cl_image_format), ctypes.POINTER(struct__cl_image_desc), ctypes.POINTER(None), ctypes.POINTER(ctypes.c_int32)]
930
+ except AttributeError:
931
+ pass
932
+ try:
933
+ clRetainMemObject = _libraries['libOpenCL.so.1'].clRetainMemObject
934
+ clRetainMemObject.restype = cl_int
935
+ clRetainMemObject.argtypes = [cl_mem]
936
+ except AttributeError:
937
+ pass
938
+ try:
939
+ clReleaseMemObject = _libraries['libOpenCL.so.1'].clReleaseMemObject
940
+ clReleaseMemObject.restype = cl_int
941
+ clReleaseMemObject.argtypes = [cl_mem]
942
+ except AttributeError:
943
+ pass
944
+ try:
945
+ clGetSupportedImageFormats = _libraries['libOpenCL.so.1'].clGetSupportedImageFormats
946
+ clGetSupportedImageFormats.restype = cl_int
947
+ clGetSupportedImageFormats.argtypes = [cl_context, cl_mem_flags, cl_mem_object_type, cl_uint, ctypes.POINTER(struct__cl_image_format), ctypes.POINTER(ctypes.c_uint32)]
948
+ except AttributeError:
949
+ pass
950
+ try:
951
+ clGetMemObjectInfo = _libraries['libOpenCL.so.1'].clGetMemObjectInfo
952
+ clGetMemObjectInfo.restype = cl_int
953
+ clGetMemObjectInfo.argtypes = [cl_mem, cl_mem_info, size_t, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_uint64)]
954
+ except AttributeError:
955
+ pass
956
+ try:
957
+ clGetImageInfo = _libraries['libOpenCL.so.1'].clGetImageInfo
958
+ clGetImageInfo.restype = cl_int
959
+ clGetImageInfo.argtypes = [cl_mem, cl_image_info, size_t, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_uint64)]
960
+ except AttributeError:
961
+ pass
962
+ try:
963
+ clGetPipeInfo = _libraries['libOpenCL.so.1'].clGetPipeInfo
964
+ clGetPipeInfo.restype = cl_int
965
+ clGetPipeInfo.argtypes = [cl_mem, cl_pipe_info, size_t, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_uint64)]
966
+ except AttributeError:
967
+ pass
968
+ try:
969
+ clSetMemObjectDestructorCallback = _libraries['libOpenCL.so.1'].clSetMemObjectDestructorCallback
970
+ clSetMemObjectDestructorCallback.restype = cl_int
971
+ clSetMemObjectDestructorCallback.argtypes = [cl_mem, ctypes.CFUNCTYPE(None, ctypes.POINTER(struct__cl_mem), ctypes.POINTER(None)), ctypes.POINTER(None)]
972
+ except AttributeError:
973
+ pass
974
+ try:
975
+ clSVMAlloc = _libraries['libOpenCL.so.1'].clSVMAlloc
976
+ clSVMAlloc.restype = ctypes.POINTER(None)
977
+ clSVMAlloc.argtypes = [cl_context, cl_svm_mem_flags, size_t, cl_uint]
978
+ except AttributeError:
979
+ pass
980
+ try:
981
+ clSVMFree = _libraries['libOpenCL.so.1'].clSVMFree
982
+ clSVMFree.restype = None
983
+ clSVMFree.argtypes = [cl_context, ctypes.POINTER(None)]
984
+ except AttributeError:
985
+ pass
986
+ try:
987
+ clCreateSamplerWithProperties = _libraries['libOpenCL.so.1'].clCreateSamplerWithProperties
988
+ clCreateSamplerWithProperties.restype = cl_sampler
989
+ clCreateSamplerWithProperties.argtypes = [cl_context, ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_int32)]
990
+ except AttributeError:
991
+ pass
992
+ try:
993
+ clRetainSampler = _libraries['libOpenCL.so.1'].clRetainSampler
994
+ clRetainSampler.restype = cl_int
995
+ clRetainSampler.argtypes = [cl_sampler]
996
+ except AttributeError:
997
+ pass
998
+ try:
999
+ clReleaseSampler = _libraries['libOpenCL.so.1'].clReleaseSampler
1000
+ clReleaseSampler.restype = cl_int
1001
+ clReleaseSampler.argtypes = [cl_sampler]
1002
+ except AttributeError:
1003
+ pass
1004
+ try:
1005
+ clGetSamplerInfo = _libraries['libOpenCL.so.1'].clGetSamplerInfo
1006
+ clGetSamplerInfo.restype = cl_int
1007
+ clGetSamplerInfo.argtypes = [cl_sampler, cl_sampler_info, size_t, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_uint64)]
1008
+ except AttributeError:
1009
+ pass
1010
+ try:
1011
+ clCreateProgramWithSource = _libraries['libOpenCL.so.1'].clCreateProgramWithSource
1012
+ clCreateProgramWithSource.restype = cl_program
1013
+ clCreateProgramWithSource.argtypes = [cl_context, cl_uint, ctypes.POINTER(ctypes.POINTER(ctypes.c_char)), ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_int32)]
1014
+ except AttributeError:
1015
+ pass
1016
+ try:
1017
+ clCreateProgramWithBinary = _libraries['libOpenCL.so.1'].clCreateProgramWithBinary
1018
+ clCreateProgramWithBinary.restype = cl_program
1019
+ clCreateProgramWithBinary.argtypes = [cl_context, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_device_id)), ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.POINTER(ctypes.c_ubyte)), ctypes.POINTER(ctypes.c_int32), ctypes.POINTER(ctypes.c_int32)]
1020
+ except AttributeError:
1021
+ pass
1022
+ try:
1023
+ clCreateProgramWithBuiltInKernels = _libraries['libOpenCL.so.1'].clCreateProgramWithBuiltInKernels
1024
+ clCreateProgramWithBuiltInKernels.restype = cl_program
1025
+ clCreateProgramWithBuiltInKernels.argtypes = [cl_context, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_device_id)), ctypes.POINTER(ctypes.c_char), ctypes.POINTER(ctypes.c_int32)]
1026
+ except AttributeError:
1027
+ pass
1028
+ try:
1029
+ clCreateProgramWithIL = _libraries['libOpenCL.so.1'].clCreateProgramWithIL
1030
+ clCreateProgramWithIL.restype = cl_program
1031
+ clCreateProgramWithIL.argtypes = [cl_context, ctypes.POINTER(None), size_t, ctypes.POINTER(ctypes.c_int32)]
1032
+ except AttributeError:
1033
+ pass
1034
+ try:
1035
+ clRetainProgram = _libraries['libOpenCL.so.1'].clRetainProgram
1036
+ clRetainProgram.restype = cl_int
1037
+ clRetainProgram.argtypes = [cl_program]
1038
+ except AttributeError:
1039
+ pass
1040
+ try:
1041
+ clReleaseProgram = _libraries['libOpenCL.so.1'].clReleaseProgram
1042
+ clReleaseProgram.restype = cl_int
1043
+ clReleaseProgram.argtypes = [cl_program]
1044
+ except AttributeError:
1045
+ pass
1046
+ try:
1047
+ clBuildProgram = _libraries['libOpenCL.so.1'].clBuildProgram
1048
+ clBuildProgram.restype = cl_int
1049
+ clBuildProgram.argtypes = [cl_program, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_device_id)), ctypes.POINTER(ctypes.c_char), ctypes.CFUNCTYPE(None, ctypes.POINTER(struct__cl_program), ctypes.POINTER(None)), ctypes.POINTER(None)]
1050
+ except AttributeError:
1051
+ pass
1052
+ try:
1053
+ clCompileProgram = _libraries['libOpenCL.so.1'].clCompileProgram
1054
+ clCompileProgram.restype = cl_int
1055
+ clCompileProgram.argtypes = [cl_program, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_device_id)), ctypes.POINTER(ctypes.c_char), cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_program)), ctypes.POINTER(ctypes.POINTER(ctypes.c_char)), ctypes.CFUNCTYPE(None, ctypes.POINTER(struct__cl_program), ctypes.POINTER(None)), ctypes.POINTER(None)]
1056
+ except AttributeError:
1057
+ pass
1058
+ try:
1059
+ clLinkProgram = _libraries['libOpenCL.so.1'].clLinkProgram
1060
+ clLinkProgram.restype = cl_program
1061
+ clLinkProgram.argtypes = [cl_context, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_device_id)), ctypes.POINTER(ctypes.c_char), cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_program)), ctypes.CFUNCTYPE(None, ctypes.POINTER(struct__cl_program), ctypes.POINTER(None)), ctypes.POINTER(None), ctypes.POINTER(ctypes.c_int32)]
1062
+ except AttributeError:
1063
+ pass
1064
+ try:
1065
+ clSetProgramReleaseCallback = _libraries['libOpenCL.so.1'].clSetProgramReleaseCallback
1066
+ clSetProgramReleaseCallback.restype = cl_int
1067
+ clSetProgramReleaseCallback.argtypes = [cl_program, ctypes.CFUNCTYPE(None, ctypes.POINTER(struct__cl_program), ctypes.POINTER(None)), ctypes.POINTER(None)]
1068
+ except AttributeError:
1069
+ pass
1070
+ try:
1071
+ clSetProgramSpecializationConstant = _libraries['libOpenCL.so.1'].clSetProgramSpecializationConstant
1072
+ clSetProgramSpecializationConstant.restype = cl_int
1073
+ clSetProgramSpecializationConstant.argtypes = [cl_program, cl_uint, size_t, ctypes.POINTER(None)]
1074
+ except AttributeError:
1075
+ pass
1076
+ try:
1077
+ clUnloadPlatformCompiler = _libraries['libOpenCL.so.1'].clUnloadPlatformCompiler
1078
+ clUnloadPlatformCompiler.restype = cl_int
1079
+ clUnloadPlatformCompiler.argtypes = [cl_platform_id]
1080
+ except AttributeError:
1081
+ pass
1082
+ try:
1083
+ clGetProgramInfo = _libraries['libOpenCL.so.1'].clGetProgramInfo
1084
+ clGetProgramInfo.restype = cl_int
1085
+ clGetProgramInfo.argtypes = [cl_program, cl_program_info, size_t, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_uint64)]
1086
+ except AttributeError:
1087
+ pass
1088
+ try:
1089
+ clGetProgramBuildInfo = _libraries['libOpenCL.so.1'].clGetProgramBuildInfo
1090
+ clGetProgramBuildInfo.restype = cl_int
1091
+ clGetProgramBuildInfo.argtypes = [cl_program, cl_device_id, cl_program_build_info, size_t, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_uint64)]
1092
+ except AttributeError:
1093
+ pass
1094
+ try:
1095
+ clCreateKernel = _libraries['libOpenCL.so.1'].clCreateKernel
1096
+ clCreateKernel.restype = cl_kernel
1097
+ clCreateKernel.argtypes = [cl_program, ctypes.POINTER(ctypes.c_char), ctypes.POINTER(ctypes.c_int32)]
1098
+ except AttributeError:
1099
+ pass
1100
+ try:
1101
+ clCreateKernelsInProgram = _libraries['libOpenCL.so.1'].clCreateKernelsInProgram
1102
+ clCreateKernelsInProgram.restype = cl_int
1103
+ clCreateKernelsInProgram.argtypes = [cl_program, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_kernel)), ctypes.POINTER(ctypes.c_uint32)]
1104
+ except AttributeError:
1105
+ pass
1106
+ try:
1107
+ clCloneKernel = _libraries['libOpenCL.so.1'].clCloneKernel
1108
+ clCloneKernel.restype = cl_kernel
1109
+ clCloneKernel.argtypes = [cl_kernel, ctypes.POINTER(ctypes.c_int32)]
1110
+ except AttributeError:
1111
+ pass
1112
+ try:
1113
+ clRetainKernel = _libraries['libOpenCL.so.1'].clRetainKernel
1114
+ clRetainKernel.restype = cl_int
1115
+ clRetainKernel.argtypes = [cl_kernel]
1116
+ except AttributeError:
1117
+ pass
1118
+ try:
1119
+ clReleaseKernel = _libraries['libOpenCL.so.1'].clReleaseKernel
1120
+ clReleaseKernel.restype = cl_int
1121
+ clReleaseKernel.argtypes = [cl_kernel]
1122
+ except AttributeError:
1123
+ pass
1124
+ try:
1125
+ clSetKernelArg = _libraries['libOpenCL.so.1'].clSetKernelArg
1126
+ clSetKernelArg.restype = cl_int
1127
+ clSetKernelArg.argtypes = [cl_kernel, cl_uint, size_t, ctypes.POINTER(None)]
1128
+ except AttributeError:
1129
+ pass
1130
+ try:
1131
+ clSetKernelArgSVMPointer = _libraries['libOpenCL.so.1'].clSetKernelArgSVMPointer
1132
+ clSetKernelArgSVMPointer.restype = cl_int
1133
+ clSetKernelArgSVMPointer.argtypes = [cl_kernel, cl_uint, ctypes.POINTER(None)]
1134
+ except AttributeError:
1135
+ pass
1136
+ try:
1137
+ clSetKernelExecInfo = _libraries['libOpenCL.so.1'].clSetKernelExecInfo
1138
+ clSetKernelExecInfo.restype = cl_int
1139
+ clSetKernelExecInfo.argtypes = [cl_kernel, cl_kernel_exec_info, size_t, ctypes.POINTER(None)]
1140
+ except AttributeError:
1141
+ pass
1142
+ try:
1143
+ clGetKernelInfo = _libraries['libOpenCL.so.1'].clGetKernelInfo
1144
+ clGetKernelInfo.restype = cl_int
1145
+ clGetKernelInfo.argtypes = [cl_kernel, cl_kernel_info, size_t, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_uint64)]
1146
+ except AttributeError:
1147
+ pass
1148
+ try:
1149
+ clGetKernelArgInfo = _libraries['libOpenCL.so.1'].clGetKernelArgInfo
1150
+ clGetKernelArgInfo.restype = cl_int
1151
+ clGetKernelArgInfo.argtypes = [cl_kernel, cl_uint, cl_kernel_arg_info, size_t, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_uint64)]
1152
+ except AttributeError:
1153
+ pass
1154
+ try:
1155
+ clGetKernelWorkGroupInfo = _libraries['libOpenCL.so.1'].clGetKernelWorkGroupInfo
1156
+ clGetKernelWorkGroupInfo.restype = cl_int
1157
+ clGetKernelWorkGroupInfo.argtypes = [cl_kernel, cl_device_id, cl_kernel_work_group_info, size_t, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_uint64)]
1158
+ except AttributeError:
1159
+ pass
1160
+ try:
1161
+ clGetKernelSubGroupInfo = _libraries['libOpenCL.so.1'].clGetKernelSubGroupInfo
1162
+ clGetKernelSubGroupInfo.restype = cl_int
1163
+ clGetKernelSubGroupInfo.argtypes = [cl_kernel, cl_device_id, cl_kernel_sub_group_info, size_t, ctypes.POINTER(None), size_t, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_uint64)]
1164
+ except AttributeError:
1165
+ pass
1166
+ try:
1167
+ clWaitForEvents = _libraries['libOpenCL.so.1'].clWaitForEvents
1168
+ clWaitForEvents.restype = cl_int
1169
+ clWaitForEvents.argtypes = [cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1170
+ except AttributeError:
1171
+ pass
1172
+ try:
1173
+ clGetEventInfo = _libraries['libOpenCL.so.1'].clGetEventInfo
1174
+ clGetEventInfo.restype = cl_int
1175
+ clGetEventInfo.argtypes = [cl_event, cl_event_info, size_t, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_uint64)]
1176
+ except AttributeError:
1177
+ pass
1178
+ try:
1179
+ clCreateUserEvent = _libraries['libOpenCL.so.1'].clCreateUserEvent
1180
+ clCreateUserEvent.restype = cl_event
1181
+ clCreateUserEvent.argtypes = [cl_context, ctypes.POINTER(ctypes.c_int32)]
1182
+ except AttributeError:
1183
+ pass
1184
+ try:
1185
+ clRetainEvent = _libraries['libOpenCL.so.1'].clRetainEvent
1186
+ clRetainEvent.restype = cl_int
1187
+ clRetainEvent.argtypes = [cl_event]
1188
+ except AttributeError:
1189
+ pass
1190
+ try:
1191
+ clReleaseEvent = _libraries['libOpenCL.so.1'].clReleaseEvent
1192
+ clReleaseEvent.restype = cl_int
1193
+ clReleaseEvent.argtypes = [cl_event]
1194
+ except AttributeError:
1195
+ pass
1196
+ try:
1197
+ clSetUserEventStatus = _libraries['libOpenCL.so.1'].clSetUserEventStatus
1198
+ clSetUserEventStatus.restype = cl_int
1199
+ clSetUserEventStatus.argtypes = [cl_event, cl_int]
1200
+ except AttributeError:
1201
+ pass
1202
+ try:
1203
+ clSetEventCallback = _libraries['libOpenCL.so.1'].clSetEventCallback
1204
+ clSetEventCallback.restype = cl_int
1205
+ clSetEventCallback.argtypes = [cl_event, cl_int, ctypes.CFUNCTYPE(None, ctypes.POINTER(struct__cl_event), ctypes.c_int32, ctypes.POINTER(None)), ctypes.POINTER(None)]
1206
+ except AttributeError:
1207
+ pass
1208
+ try:
1209
+ clGetEventProfilingInfo = _libraries['libOpenCL.so.1'].clGetEventProfilingInfo
1210
+ clGetEventProfilingInfo.restype = cl_int
1211
+ clGetEventProfilingInfo.argtypes = [cl_event, cl_profiling_info, size_t, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_uint64)]
1212
+ except AttributeError:
1213
+ pass
1214
+ try:
1215
+ clFlush = _libraries['libOpenCL.so.1'].clFlush
1216
+ clFlush.restype = cl_int
1217
+ clFlush.argtypes = [cl_command_queue]
1218
+ except AttributeError:
1219
+ pass
1220
+ try:
1221
+ clFinish = _libraries['libOpenCL.so.1'].clFinish
1222
+ clFinish.restype = cl_int
1223
+ clFinish.argtypes = [cl_command_queue]
1224
+ except AttributeError:
1225
+ pass
1226
+ try:
1227
+ clEnqueueReadBuffer = _libraries['libOpenCL.so.1'].clEnqueueReadBuffer
1228
+ clEnqueueReadBuffer.restype = cl_int
1229
+ clEnqueueReadBuffer.argtypes = [cl_command_queue, cl_mem, cl_bool, size_t, size_t, ctypes.POINTER(None), cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1230
+ except AttributeError:
1231
+ pass
1232
+ try:
1233
+ clEnqueueReadBufferRect = _libraries['libOpenCL.so.1'].clEnqueueReadBufferRect
1234
+ clEnqueueReadBufferRect.restype = cl_int
1235
+ clEnqueueReadBufferRect.argtypes = [cl_command_queue, cl_mem, cl_bool, ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_uint64), size_t, size_t, size_t, size_t, ctypes.POINTER(None), cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1236
+ except AttributeError:
1237
+ pass
1238
+ try:
1239
+ clEnqueueWriteBuffer = _libraries['libOpenCL.so.1'].clEnqueueWriteBuffer
1240
+ clEnqueueWriteBuffer.restype = cl_int
1241
+ clEnqueueWriteBuffer.argtypes = [cl_command_queue, cl_mem, cl_bool, size_t, size_t, ctypes.POINTER(None), cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1242
+ except AttributeError:
1243
+ pass
1244
+ try:
1245
+ clEnqueueWriteBufferRect = _libraries['libOpenCL.so.1'].clEnqueueWriteBufferRect
1246
+ clEnqueueWriteBufferRect.restype = cl_int
1247
+ clEnqueueWriteBufferRect.argtypes = [cl_command_queue, cl_mem, cl_bool, ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_uint64), size_t, size_t, size_t, size_t, ctypes.POINTER(None), cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1248
+ except AttributeError:
1249
+ pass
1250
+ try:
1251
+ clEnqueueFillBuffer = _libraries['libOpenCL.so.1'].clEnqueueFillBuffer
1252
+ clEnqueueFillBuffer.restype = cl_int
1253
+ clEnqueueFillBuffer.argtypes = [cl_command_queue, cl_mem, ctypes.POINTER(None), size_t, size_t, size_t, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1254
+ except AttributeError:
1255
+ pass
1256
+ try:
1257
+ clEnqueueCopyBuffer = _libraries['libOpenCL.so.1'].clEnqueueCopyBuffer
1258
+ clEnqueueCopyBuffer.restype = cl_int
1259
+ clEnqueueCopyBuffer.argtypes = [cl_command_queue, cl_mem, cl_mem, size_t, size_t, size_t, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1260
+ except AttributeError:
1261
+ pass
1262
+ try:
1263
+ clEnqueueCopyBufferRect = _libraries['libOpenCL.so.1'].clEnqueueCopyBufferRect
1264
+ clEnqueueCopyBufferRect.restype = cl_int
1265
+ clEnqueueCopyBufferRect.argtypes = [cl_command_queue, cl_mem, cl_mem, ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_uint64), size_t, size_t, size_t, size_t, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1266
+ except AttributeError:
1267
+ pass
1268
+ try:
1269
+ clEnqueueReadImage = _libraries['libOpenCL.so.1'].clEnqueueReadImage
1270
+ clEnqueueReadImage.restype = cl_int
1271
+ clEnqueueReadImage.argtypes = [cl_command_queue, cl_mem, cl_bool, ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_uint64), size_t, size_t, ctypes.POINTER(None), cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1272
+ except AttributeError:
1273
+ pass
1274
+ try:
1275
+ clEnqueueWriteImage = _libraries['libOpenCL.so.1'].clEnqueueWriteImage
1276
+ clEnqueueWriteImage.restype = cl_int
1277
+ clEnqueueWriteImage.argtypes = [cl_command_queue, cl_mem, cl_bool, ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_uint64), size_t, size_t, ctypes.POINTER(None), cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1278
+ except AttributeError:
1279
+ pass
1280
+ try:
1281
+ clEnqueueFillImage = _libraries['libOpenCL.so.1'].clEnqueueFillImage
1282
+ clEnqueueFillImage.restype = cl_int
1283
+ clEnqueueFillImage.argtypes = [cl_command_queue, cl_mem, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_uint64), cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1284
+ except AttributeError:
1285
+ pass
1286
+ try:
1287
+ clEnqueueCopyImage = _libraries['libOpenCL.so.1'].clEnqueueCopyImage
1288
+ clEnqueueCopyImage.restype = cl_int
1289
+ clEnqueueCopyImage.argtypes = [cl_command_queue, cl_mem, cl_mem, ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_uint64), cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1290
+ except AttributeError:
1291
+ pass
1292
+ try:
1293
+ clEnqueueCopyImageToBuffer = _libraries['libOpenCL.so.1'].clEnqueueCopyImageToBuffer
1294
+ clEnqueueCopyImageToBuffer.restype = cl_int
1295
+ clEnqueueCopyImageToBuffer.argtypes = [cl_command_queue, cl_mem, cl_mem, ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_uint64), size_t, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1296
+ except AttributeError:
1297
+ pass
1298
+ try:
1299
+ clEnqueueCopyBufferToImage = _libraries['libOpenCL.so.1'].clEnqueueCopyBufferToImage
1300
+ clEnqueueCopyBufferToImage.restype = cl_int
1301
+ clEnqueueCopyBufferToImage.argtypes = [cl_command_queue, cl_mem, cl_mem, size_t, ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_uint64), cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1302
+ except AttributeError:
1303
+ pass
1304
+ try:
1305
+ clEnqueueMapBuffer = _libraries['libOpenCL.so.1'].clEnqueueMapBuffer
1306
+ clEnqueueMapBuffer.restype = ctypes.POINTER(None)
1307
+ clEnqueueMapBuffer.argtypes = [cl_command_queue, cl_mem, cl_bool, cl_map_flags, size_t, size_t, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.c_int32)]
1308
+ except AttributeError:
1309
+ pass
1310
+ try:
1311
+ clEnqueueMapImage = _libraries['libOpenCL.so.1'].clEnqueueMapImage
1312
+ clEnqueueMapImage.restype = ctypes.POINTER(None)
1313
+ clEnqueueMapImage.argtypes = [cl_command_queue, cl_mem, cl_bool, cl_map_flags, ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_uint64), cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.c_int32)]
1314
+ except AttributeError:
1315
+ pass
1316
+ try:
1317
+ clEnqueueUnmapMemObject = _libraries['libOpenCL.so.1'].clEnqueueUnmapMemObject
1318
+ clEnqueueUnmapMemObject.restype = cl_int
1319
+ clEnqueueUnmapMemObject.argtypes = [cl_command_queue, cl_mem, ctypes.POINTER(None), cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1320
+ except AttributeError:
1321
+ pass
1322
+ try:
1323
+ clEnqueueMigrateMemObjects = _libraries['libOpenCL.so.1'].clEnqueueMigrateMemObjects
1324
+ clEnqueueMigrateMemObjects.restype = cl_int
1325
+ clEnqueueMigrateMemObjects.argtypes = [cl_command_queue, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_mem)), cl_mem_migration_flags, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1326
+ except AttributeError:
1327
+ pass
1328
+ try:
1329
+ clEnqueueNDRangeKernel = _libraries['libOpenCL.so.1'].clEnqueueNDRangeKernel
1330
+ clEnqueueNDRangeKernel.restype = cl_int
1331
+ clEnqueueNDRangeKernel.argtypes = [cl_command_queue, cl_kernel, cl_uint, ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_uint64), ctypes.POINTER(ctypes.c_uint64), cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1332
+ except AttributeError:
1333
+ pass
1334
+ try:
1335
+ clEnqueueNativeKernel = _libraries['libOpenCL.so.1'].clEnqueueNativeKernel
1336
+ clEnqueueNativeKernel.restype = cl_int
1337
+ clEnqueueNativeKernel.argtypes = [cl_command_queue, ctypes.CFUNCTYPE(None, ctypes.POINTER(None)), ctypes.POINTER(None), size_t, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_mem)), ctypes.POINTER(ctypes.POINTER(None)), cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1338
+ except AttributeError:
1339
+ pass
1340
+ try:
1341
+ clEnqueueMarkerWithWaitList = _libraries['libOpenCL.so.1'].clEnqueueMarkerWithWaitList
1342
+ clEnqueueMarkerWithWaitList.restype = cl_int
1343
+ clEnqueueMarkerWithWaitList.argtypes = [cl_command_queue, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1344
+ except AttributeError:
1345
+ pass
1346
+ try:
1347
+ clEnqueueBarrierWithWaitList = _libraries['libOpenCL.so.1'].clEnqueueBarrierWithWaitList
1348
+ clEnqueueBarrierWithWaitList.restype = cl_int
1349
+ clEnqueueBarrierWithWaitList.argtypes = [cl_command_queue, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1350
+ except AttributeError:
1351
+ pass
1352
+ try:
1353
+ clEnqueueSVMFree = _libraries['libOpenCL.so.1'].clEnqueueSVMFree
1354
+ clEnqueueSVMFree.restype = cl_int
1355
+ clEnqueueSVMFree.argtypes = [cl_command_queue, cl_uint, ctypes.POINTER(None) * 0, ctypes.CFUNCTYPE(None, ctypes.POINTER(struct__cl_command_queue), ctypes.c_uint32, ctypes.POINTER(ctypes.POINTER(None)), ctypes.POINTER(None)), ctypes.POINTER(None), cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1356
+ except AttributeError:
1357
+ pass
1358
+ try:
1359
+ clEnqueueSVMMemcpy = _libraries['libOpenCL.so.1'].clEnqueueSVMMemcpy
1360
+ clEnqueueSVMMemcpy.restype = cl_int
1361
+ clEnqueueSVMMemcpy.argtypes = [cl_command_queue, cl_bool, ctypes.POINTER(None), ctypes.POINTER(None), size_t, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1362
+ except AttributeError:
1363
+ pass
1364
+ try:
1365
+ clEnqueueSVMMemFill = _libraries['libOpenCL.so.1'].clEnqueueSVMMemFill
1366
+ clEnqueueSVMMemFill.restype = cl_int
1367
+ clEnqueueSVMMemFill.argtypes = [cl_command_queue, ctypes.POINTER(None), ctypes.POINTER(None), size_t, size_t, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1368
+ except AttributeError:
1369
+ pass
1370
+ try:
1371
+ clEnqueueSVMMap = _libraries['libOpenCL.so.1'].clEnqueueSVMMap
1372
+ clEnqueueSVMMap.restype = cl_int
1373
+ clEnqueueSVMMap.argtypes = [cl_command_queue, cl_bool, cl_map_flags, ctypes.POINTER(None), size_t, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1374
+ except AttributeError:
1375
+ pass
1376
+ try:
1377
+ clEnqueueSVMUnmap = _libraries['libOpenCL.so.1'].clEnqueueSVMUnmap
1378
+ clEnqueueSVMUnmap.restype = cl_int
1379
+ clEnqueueSVMUnmap.argtypes = [cl_command_queue, ctypes.POINTER(None), cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1380
+ except AttributeError:
1381
+ pass
1382
+ try:
1383
+ clEnqueueSVMMigrateMem = _libraries['libOpenCL.so.1'].clEnqueueSVMMigrateMem
1384
+ clEnqueueSVMMigrateMem.restype = cl_int
1385
+ clEnqueueSVMMigrateMem.argtypes = [cl_command_queue, cl_uint, ctypes.POINTER(ctypes.POINTER(None)), ctypes.POINTER(ctypes.c_uint64), cl_mem_migration_flags, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1386
+ except AttributeError:
1387
+ pass
1388
+ try:
1389
+ clGetExtensionFunctionAddressForPlatform = _libraries['libOpenCL.so.1'].clGetExtensionFunctionAddressForPlatform
1390
+ clGetExtensionFunctionAddressForPlatform.restype = ctypes.POINTER(None)
1391
+ clGetExtensionFunctionAddressForPlatform.argtypes = [cl_platform_id, ctypes.POINTER(ctypes.c_char)]
1392
+ except AttributeError:
1393
+ pass
1394
+ try:
1395
+ clCreateImage2D = _libraries['libOpenCL.so.1'].clCreateImage2D
1396
+ clCreateImage2D.restype = cl_mem
1397
+ clCreateImage2D.argtypes = [cl_context, cl_mem_flags, ctypes.POINTER(struct__cl_image_format), size_t, size_t, size_t, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_int32)]
1398
+ except AttributeError:
1399
+ pass
1400
+ try:
1401
+ clCreateImage3D = _libraries['libOpenCL.so.1'].clCreateImage3D
1402
+ clCreateImage3D.restype = cl_mem
1403
+ clCreateImage3D.argtypes = [cl_context, cl_mem_flags, ctypes.POINTER(struct__cl_image_format), size_t, size_t, size_t, size_t, size_t, ctypes.POINTER(None), ctypes.POINTER(ctypes.c_int32)]
1404
+ except AttributeError:
1405
+ pass
1406
+ try:
1407
+ clEnqueueMarker = _libraries['libOpenCL.so.1'].clEnqueueMarker
1408
+ clEnqueueMarker.restype = cl_int
1409
+ clEnqueueMarker.argtypes = [cl_command_queue, ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1410
+ except AttributeError:
1411
+ pass
1412
+ try:
1413
+ clEnqueueWaitForEvents = _libraries['libOpenCL.so.1'].clEnqueueWaitForEvents
1414
+ clEnqueueWaitForEvents.restype = cl_int
1415
+ clEnqueueWaitForEvents.argtypes = [cl_command_queue, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1416
+ except AttributeError:
1417
+ pass
1418
+ try:
1419
+ clEnqueueBarrier = _libraries['libOpenCL.so.1'].clEnqueueBarrier
1420
+ clEnqueueBarrier.restype = cl_int
1421
+ clEnqueueBarrier.argtypes = [cl_command_queue]
1422
+ except AttributeError:
1423
+ pass
1424
+ try:
1425
+ clUnloadCompiler = _libraries['libOpenCL.so.1'].clUnloadCompiler
1426
+ clUnloadCompiler.restype = cl_int
1427
+ clUnloadCompiler.argtypes = []
1428
+ except AttributeError:
1429
+ pass
1430
+ try:
1431
+ clGetExtensionFunctionAddress = _libraries['libOpenCL.so.1'].clGetExtensionFunctionAddress
1432
+ clGetExtensionFunctionAddress.restype = ctypes.POINTER(None)
1433
+ clGetExtensionFunctionAddress.argtypes = [ctypes.POINTER(ctypes.c_char)]
1434
+ except AttributeError:
1435
+ pass
1436
+ try:
1437
+ clCreateCommandQueue = _libraries['libOpenCL.so.1'].clCreateCommandQueue
1438
+ clCreateCommandQueue.restype = cl_command_queue
1439
+ clCreateCommandQueue.argtypes = [cl_context, cl_device_id, cl_command_queue_properties, ctypes.POINTER(ctypes.c_int32)]
1440
+ except AttributeError:
1441
+ pass
1442
+ try:
1443
+ clCreateSampler = _libraries['libOpenCL.so.1'].clCreateSampler
1444
+ clCreateSampler.restype = cl_sampler
1445
+ clCreateSampler.argtypes = [cl_context, cl_bool, cl_addressing_mode, cl_filter_mode, ctypes.POINTER(ctypes.c_int32)]
1446
+ except AttributeError:
1447
+ pass
1448
+ try:
1449
+ clEnqueueTask = _libraries['libOpenCL.so.1'].clEnqueueTask
1450
+ clEnqueueTask.restype = cl_int
1451
+ clEnqueueTask.argtypes = [cl_command_queue, cl_kernel, cl_uint, ctypes.POINTER(ctypes.POINTER(struct__cl_event)), ctypes.POINTER(ctypes.POINTER(struct__cl_event))]
1452
+ except AttributeError:
1453
+ pass
1454
+ __all__ = \
1455
+ ['CL_A', 'CL_ABGR', 'CL_ADDRESS_CLAMP',
1456
+ 'CL_ADDRESS_CLAMP_TO_EDGE', 'CL_ADDRESS_MIRRORED_REPEAT',
1457
+ 'CL_ADDRESS_NONE', 'CL_ADDRESS_REPEAT', 'CL_ARGB', 'CL_BGRA',
1458
+ 'CL_BLOCKING', 'CL_BUFFER_CREATE_TYPE_REGION', 'CL_BUILD_ERROR',
1459
+ 'CL_BUILD_IN_PROGRESS', 'CL_BUILD_NONE',
1460
+ 'CL_BUILD_PROGRAM_FAILURE', 'CL_BUILD_SUCCESS',
1461
+ 'CL_COMMAND_ACQUIRE_GL_OBJECTS', 'CL_COMMAND_BARRIER',
1462
+ 'CL_COMMAND_COPY_BUFFER', 'CL_COMMAND_COPY_BUFFER_RECT',
1463
+ 'CL_COMMAND_COPY_BUFFER_TO_IMAGE', 'CL_COMMAND_COPY_IMAGE',
1464
+ 'CL_COMMAND_COPY_IMAGE_TO_BUFFER', 'CL_COMMAND_FILL_BUFFER',
1465
+ 'CL_COMMAND_FILL_IMAGE', 'CL_COMMAND_MAP_BUFFER',
1466
+ 'CL_COMMAND_MAP_IMAGE', 'CL_COMMAND_MARKER',
1467
+ 'CL_COMMAND_MIGRATE_MEM_OBJECTS', 'CL_COMMAND_NATIVE_KERNEL',
1468
+ 'CL_COMMAND_NDRANGE_KERNEL', 'CL_COMMAND_READ_BUFFER',
1469
+ 'CL_COMMAND_READ_BUFFER_RECT', 'CL_COMMAND_READ_IMAGE',
1470
+ 'CL_COMMAND_RELEASE_GL_OBJECTS', 'CL_COMMAND_SVM_FREE',
1471
+ 'CL_COMMAND_SVM_MAP', 'CL_COMMAND_SVM_MEMCPY',
1472
+ 'CL_COMMAND_SVM_MEMFILL', 'CL_COMMAND_SVM_MIGRATE_MEM',
1473
+ 'CL_COMMAND_SVM_UNMAP', 'CL_COMMAND_TASK',
1474
+ 'CL_COMMAND_UNMAP_MEM_OBJECT', 'CL_COMMAND_USER',
1475
+ 'CL_COMMAND_WRITE_BUFFER', 'CL_COMMAND_WRITE_BUFFER_RECT',
1476
+ 'CL_COMMAND_WRITE_IMAGE', 'CL_COMPILER_NOT_AVAILABLE',
1477
+ 'CL_COMPILE_PROGRAM_FAILURE', 'CL_COMPLETE', 'CL_CONTEXT_DEVICES',
1478
+ 'CL_CONTEXT_INTEROP_USER_SYNC', 'CL_CONTEXT_NUM_DEVICES',
1479
+ 'CL_CONTEXT_PLATFORM', 'CL_CONTEXT_PROPERTIES',
1480
+ 'CL_CONTEXT_REFERENCE_COUNT', 'CL_DEPTH', 'CL_DEPTH_STENCIL',
1481
+ 'CL_DEVICE_ADDRESS_BITS', 'CL_DEVICE_AFFINITY_DOMAIN_L1_CACHE',
1482
+ 'CL_DEVICE_AFFINITY_DOMAIN_L2_CACHE',
1483
+ 'CL_DEVICE_AFFINITY_DOMAIN_L3_CACHE',
1484
+ 'CL_DEVICE_AFFINITY_DOMAIN_L4_CACHE',
1485
+ 'CL_DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE',
1486
+ 'CL_DEVICE_AFFINITY_DOMAIN_NUMA',
1487
+ 'CL_DEVICE_ATOMIC_FENCE_CAPABILITIES',
1488
+ 'CL_DEVICE_ATOMIC_MEMORY_CAPABILITIES',
1489
+ 'CL_DEVICE_ATOMIC_ORDER_ACQ_REL',
1490
+ 'CL_DEVICE_ATOMIC_ORDER_RELAXED',
1491
+ 'CL_DEVICE_ATOMIC_ORDER_SEQ_CST',
1492
+ 'CL_DEVICE_ATOMIC_SCOPE_ALL_DEVICES',
1493
+ 'CL_DEVICE_ATOMIC_SCOPE_DEVICE',
1494
+ 'CL_DEVICE_ATOMIC_SCOPE_WORK_GROUP',
1495
+ 'CL_DEVICE_ATOMIC_SCOPE_WORK_ITEM', 'CL_DEVICE_AVAILABLE',
1496
+ 'CL_DEVICE_BUILT_IN_KERNELS',
1497
+ 'CL_DEVICE_BUILT_IN_KERNELS_WITH_VERSION',
1498
+ 'CL_DEVICE_COMPILER_AVAILABLE',
1499
+ 'CL_DEVICE_DEVICE_ENQUEUE_CAPABILITIES',
1500
+ 'CL_DEVICE_DOUBLE_FP_CONFIG', 'CL_DEVICE_ENDIAN_LITTLE',
1501
+ 'CL_DEVICE_ERROR_CORRECTION_SUPPORT',
1502
+ 'CL_DEVICE_EXECUTION_CAPABILITIES', 'CL_DEVICE_EXTENSIONS',
1503
+ 'CL_DEVICE_EXTENSIONS_WITH_VERSION',
1504
+ 'CL_DEVICE_GENERIC_ADDRESS_SPACE_SUPPORT',
1505
+ 'CL_DEVICE_GLOBAL_MEM_CACHELINE_SIZE',
1506
+ 'CL_DEVICE_GLOBAL_MEM_CACHE_SIZE',
1507
+ 'CL_DEVICE_GLOBAL_MEM_CACHE_TYPE', 'CL_DEVICE_GLOBAL_MEM_SIZE',
1508
+ 'CL_DEVICE_GLOBAL_VARIABLE_PREFERRED_TOTAL_SIZE',
1509
+ 'CL_DEVICE_HOST_UNIFIED_MEMORY', 'CL_DEVICE_ILS_WITH_VERSION',
1510
+ 'CL_DEVICE_IL_VERSION', 'CL_DEVICE_IMAGE2D_MAX_HEIGHT',
1511
+ 'CL_DEVICE_IMAGE2D_MAX_WIDTH', 'CL_DEVICE_IMAGE3D_MAX_DEPTH',
1512
+ 'CL_DEVICE_IMAGE3D_MAX_HEIGHT', 'CL_DEVICE_IMAGE3D_MAX_WIDTH',
1513
+ 'CL_DEVICE_IMAGE_BASE_ADDRESS_ALIGNMENT',
1514
+ 'CL_DEVICE_IMAGE_MAX_ARRAY_SIZE',
1515
+ 'CL_DEVICE_IMAGE_MAX_BUFFER_SIZE',
1516
+ 'CL_DEVICE_IMAGE_PITCH_ALIGNMENT', 'CL_DEVICE_IMAGE_SUPPORT',
1517
+ 'CL_DEVICE_LATEST_CONFORMANCE_VERSION_PASSED',
1518
+ 'CL_DEVICE_LINKER_AVAILABLE', 'CL_DEVICE_LOCAL_MEM_SIZE',
1519
+ 'CL_DEVICE_LOCAL_MEM_TYPE', 'CL_DEVICE_MAX_CLOCK_FREQUENCY',
1520
+ 'CL_DEVICE_MAX_COMPUTE_UNITS', 'CL_DEVICE_MAX_CONSTANT_ARGS',
1521
+ 'CL_DEVICE_MAX_CONSTANT_BUFFER_SIZE',
1522
+ 'CL_DEVICE_MAX_GLOBAL_VARIABLE_SIZE',
1523
+ 'CL_DEVICE_MAX_MEM_ALLOC_SIZE', 'CL_DEVICE_MAX_NUM_SUB_GROUPS',
1524
+ 'CL_DEVICE_MAX_ON_DEVICE_EVENTS',
1525
+ 'CL_DEVICE_MAX_ON_DEVICE_QUEUES', 'CL_DEVICE_MAX_PARAMETER_SIZE',
1526
+ 'CL_DEVICE_MAX_PIPE_ARGS', 'CL_DEVICE_MAX_READ_IMAGE_ARGS',
1527
+ 'CL_DEVICE_MAX_READ_WRITE_IMAGE_ARGS', 'CL_DEVICE_MAX_SAMPLERS',
1528
+ 'CL_DEVICE_MAX_WORK_GROUP_SIZE',
1529
+ 'CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS',
1530
+ 'CL_DEVICE_MAX_WORK_ITEM_SIZES', 'CL_DEVICE_MAX_WRITE_IMAGE_ARGS',
1531
+ 'CL_DEVICE_MEM_BASE_ADDR_ALIGN',
1532
+ 'CL_DEVICE_MIN_DATA_TYPE_ALIGN_SIZE', 'CL_DEVICE_NAME',
1533
+ 'CL_DEVICE_NATIVE_VECTOR_WIDTH_CHAR',
1534
+ 'CL_DEVICE_NATIVE_VECTOR_WIDTH_DOUBLE',
1535
+ 'CL_DEVICE_NATIVE_VECTOR_WIDTH_FLOAT',
1536
+ 'CL_DEVICE_NATIVE_VECTOR_WIDTH_HALF',
1537
+ 'CL_DEVICE_NATIVE_VECTOR_WIDTH_INT',
1538
+ 'CL_DEVICE_NATIVE_VECTOR_WIDTH_LONG',
1539
+ 'CL_DEVICE_NATIVE_VECTOR_WIDTH_SHORT',
1540
+ 'CL_DEVICE_NON_UNIFORM_WORK_GROUP_SUPPORT',
1541
+ 'CL_DEVICE_NOT_AVAILABLE', 'CL_DEVICE_NOT_FOUND',
1542
+ 'CL_DEVICE_NUMERIC_VERSION', 'CL_DEVICE_OPENCL_C_ALL_VERSIONS',
1543
+ 'CL_DEVICE_OPENCL_C_FEATURES', 'CL_DEVICE_OPENCL_C_VERSION',
1544
+ 'CL_DEVICE_PARENT_DEVICE', 'CL_DEVICE_PARTITION_AFFINITY_DOMAIN',
1545
+ 'CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN',
1546
+ 'CL_DEVICE_PARTITION_BY_COUNTS',
1547
+ 'CL_DEVICE_PARTITION_BY_COUNTS_LIST_END',
1548
+ 'CL_DEVICE_PARTITION_EQUALLY', 'CL_DEVICE_PARTITION_FAILED',
1549
+ 'CL_DEVICE_PARTITION_MAX_SUB_DEVICES',
1550
+ 'CL_DEVICE_PARTITION_PROPERTIES', 'CL_DEVICE_PARTITION_TYPE',
1551
+ 'CL_DEVICE_PIPE_MAX_ACTIVE_RESERVATIONS',
1552
+ 'CL_DEVICE_PIPE_MAX_PACKET_SIZE', 'CL_DEVICE_PIPE_SUPPORT',
1553
+ 'CL_DEVICE_PLATFORM',
1554
+ 'CL_DEVICE_PREFERRED_GLOBAL_ATOMIC_ALIGNMENT',
1555
+ 'CL_DEVICE_PREFERRED_INTEROP_USER_SYNC',
1556
+ 'CL_DEVICE_PREFERRED_LOCAL_ATOMIC_ALIGNMENT',
1557
+ 'CL_DEVICE_PREFERRED_PLATFORM_ATOMIC_ALIGNMENT',
1558
+ 'CL_DEVICE_PREFERRED_VECTOR_WIDTH_CHAR',
1559
+ 'CL_DEVICE_PREFERRED_VECTOR_WIDTH_DOUBLE',
1560
+ 'CL_DEVICE_PREFERRED_VECTOR_WIDTH_FLOAT',
1561
+ 'CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF',
1562
+ 'CL_DEVICE_PREFERRED_VECTOR_WIDTH_INT',
1563
+ 'CL_DEVICE_PREFERRED_VECTOR_WIDTH_LONG',
1564
+ 'CL_DEVICE_PREFERRED_VECTOR_WIDTH_SHORT',
1565
+ 'CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_MULTIPLE',
1566
+ 'CL_DEVICE_PRINTF_BUFFER_SIZE', 'CL_DEVICE_PROFILE',
1567
+ 'CL_DEVICE_PROFILING_TIMER_RESOLUTION',
1568
+ 'CL_DEVICE_QUEUE_ON_DEVICE_MAX_SIZE',
1569
+ 'CL_DEVICE_QUEUE_ON_DEVICE_PREFERRED_SIZE',
1570
+ 'CL_DEVICE_QUEUE_ON_DEVICE_PROPERTIES',
1571
+ 'CL_DEVICE_QUEUE_ON_HOST_PROPERTIES',
1572
+ 'CL_DEVICE_QUEUE_PROPERTIES',
1573
+ 'CL_DEVICE_QUEUE_REPLACEABLE_DEFAULT',
1574
+ 'CL_DEVICE_QUEUE_SUPPORTED', 'CL_DEVICE_REFERENCE_COUNT',
1575
+ 'CL_DEVICE_SINGLE_FP_CONFIG',
1576
+ 'CL_DEVICE_SUB_GROUP_INDEPENDENT_FORWARD_PROGRESS',
1577
+ 'CL_DEVICE_SVM_ATOMICS', 'CL_DEVICE_SVM_CAPABILITIES',
1578
+ 'CL_DEVICE_SVM_COARSE_GRAIN_BUFFER',
1579
+ 'CL_DEVICE_SVM_FINE_GRAIN_BUFFER',
1580
+ 'CL_DEVICE_SVM_FINE_GRAIN_SYSTEM', 'CL_DEVICE_TYPE',
1581
+ 'CL_DEVICE_TYPE_ACCELERATOR', 'CL_DEVICE_TYPE_ALL',
1582
+ 'CL_DEVICE_TYPE_CPU', 'CL_DEVICE_TYPE_CUSTOM',
1583
+ 'CL_DEVICE_TYPE_DEFAULT', 'CL_DEVICE_TYPE_GPU',
1584
+ 'CL_DEVICE_VENDOR', 'CL_DEVICE_VENDOR_ID', 'CL_DEVICE_VERSION',
1585
+ 'CL_DEVICE_WORK_GROUP_COLLECTIVE_FUNCTIONS_SUPPORT',
1586
+ 'CL_DRIVER_VERSION', 'CL_EVENT_COMMAND_EXECUTION_STATUS',
1587
+ 'CL_EVENT_COMMAND_QUEUE', 'CL_EVENT_COMMAND_TYPE',
1588
+ 'CL_EVENT_CONTEXT', 'CL_EVENT_REFERENCE_COUNT', 'CL_EXEC_KERNEL',
1589
+ 'CL_EXEC_NATIVE_KERNEL',
1590
+ 'CL_EXEC_STATUS_ERROR_FOR_EVENTS_IN_WAIT_LIST', 'CL_FALSE',
1591
+ 'CL_FILTER_LINEAR', 'CL_FILTER_NEAREST', 'CL_FLOAT',
1592
+ 'CL_FP_CORRECTLY_ROUNDED_DIVIDE_SQRT', 'CL_FP_DENORM',
1593
+ 'CL_FP_FMA', 'CL_FP_INF_NAN', 'CL_FP_ROUND_TO_INF',
1594
+ 'CL_FP_ROUND_TO_NEAREST', 'CL_FP_ROUND_TO_ZERO',
1595
+ 'CL_FP_SOFT_FLOAT', 'CL_GLOBAL', 'CL_HALF_FLOAT',
1596
+ 'CL_IMAGE_ARRAY_SIZE', 'CL_IMAGE_BUFFER', 'CL_IMAGE_DEPTH',
1597
+ 'CL_IMAGE_ELEMENT_SIZE', 'CL_IMAGE_FORMAT',
1598
+ 'CL_IMAGE_FORMAT_MISMATCH', 'CL_IMAGE_FORMAT_NOT_SUPPORTED',
1599
+ 'CL_IMAGE_HEIGHT', 'CL_IMAGE_NUM_MIP_LEVELS',
1600
+ 'CL_IMAGE_NUM_SAMPLES', 'CL_IMAGE_ROW_PITCH',
1601
+ 'CL_IMAGE_SLICE_PITCH', 'CL_IMAGE_WIDTH', 'CL_INTENSITY',
1602
+ 'CL_INVALID_ARG_INDEX', 'CL_INVALID_ARG_SIZE',
1603
+ 'CL_INVALID_ARG_VALUE', 'CL_INVALID_BINARY',
1604
+ 'CL_INVALID_BUFFER_SIZE', 'CL_INVALID_BUILD_OPTIONS',
1605
+ 'CL_INVALID_COMMAND_QUEUE', 'CL_INVALID_COMPILER_OPTIONS',
1606
+ 'CL_INVALID_CONTEXT', 'CL_INVALID_DEVICE',
1607
+ 'CL_INVALID_DEVICE_PARTITION_COUNT', 'CL_INVALID_DEVICE_QUEUE',
1608
+ 'CL_INVALID_DEVICE_TYPE', 'CL_INVALID_EVENT',
1609
+ 'CL_INVALID_EVENT_WAIT_LIST', 'CL_INVALID_GLOBAL_OFFSET',
1610
+ 'CL_INVALID_GLOBAL_WORK_SIZE', 'CL_INVALID_GL_OBJECT',
1611
+ 'CL_INVALID_HOST_PTR', 'CL_INVALID_IMAGE_DESCRIPTOR',
1612
+ 'CL_INVALID_IMAGE_FORMAT_DESCRIPTOR', 'CL_INVALID_IMAGE_SIZE',
1613
+ 'CL_INVALID_KERNEL', 'CL_INVALID_KERNEL_ARGS',
1614
+ 'CL_INVALID_KERNEL_DEFINITION', 'CL_INVALID_KERNEL_NAME',
1615
+ 'CL_INVALID_LINKER_OPTIONS', 'CL_INVALID_MEM_OBJECT',
1616
+ 'CL_INVALID_MIP_LEVEL', 'CL_INVALID_OPERATION',
1617
+ 'CL_INVALID_PIPE_SIZE', 'CL_INVALID_PLATFORM',
1618
+ 'CL_INVALID_PROGRAM', 'CL_INVALID_PROGRAM_EXECUTABLE',
1619
+ 'CL_INVALID_PROPERTY', 'CL_INVALID_QUEUE_PROPERTIES',
1620
+ 'CL_INVALID_SAMPLER', 'CL_INVALID_SPEC_ID', 'CL_INVALID_VALUE',
1621
+ 'CL_INVALID_WORK_DIMENSION', 'CL_INVALID_WORK_GROUP_SIZE',
1622
+ 'CL_INVALID_WORK_ITEM_SIZE', 'CL_KERNEL_ARG_ACCESS_NONE',
1623
+ 'CL_KERNEL_ARG_ACCESS_QUALIFIER',
1624
+ 'CL_KERNEL_ARG_ACCESS_READ_ONLY',
1625
+ 'CL_KERNEL_ARG_ACCESS_READ_WRITE',
1626
+ 'CL_KERNEL_ARG_ACCESS_WRITE_ONLY',
1627
+ 'CL_KERNEL_ARG_ADDRESS_CONSTANT', 'CL_KERNEL_ARG_ADDRESS_GLOBAL',
1628
+ 'CL_KERNEL_ARG_ADDRESS_LOCAL', 'CL_KERNEL_ARG_ADDRESS_PRIVATE',
1629
+ 'CL_KERNEL_ARG_ADDRESS_QUALIFIER',
1630
+ 'CL_KERNEL_ARG_INFO_NOT_AVAILABLE', 'CL_KERNEL_ARG_NAME',
1631
+ 'CL_KERNEL_ARG_TYPE_CONST', 'CL_KERNEL_ARG_TYPE_NAME',
1632
+ 'CL_KERNEL_ARG_TYPE_NONE', 'CL_KERNEL_ARG_TYPE_PIPE',
1633
+ 'CL_KERNEL_ARG_TYPE_QUALIFIER', 'CL_KERNEL_ARG_TYPE_RESTRICT',
1634
+ 'CL_KERNEL_ARG_TYPE_VOLATILE', 'CL_KERNEL_ATTRIBUTES',
1635
+ 'CL_KERNEL_COMPILE_NUM_SUB_GROUPS',
1636
+ 'CL_KERNEL_COMPILE_WORK_GROUP_SIZE', 'CL_KERNEL_CONTEXT',
1637
+ 'CL_KERNEL_EXEC_INFO_SVM_FINE_GRAIN_SYSTEM',
1638
+ 'CL_KERNEL_EXEC_INFO_SVM_PTRS', 'CL_KERNEL_FUNCTION_NAME',
1639
+ 'CL_KERNEL_GLOBAL_WORK_SIZE', 'CL_KERNEL_LOCAL_MEM_SIZE',
1640
+ 'CL_KERNEL_LOCAL_SIZE_FOR_SUB_GROUP_COUNT',
1641
+ 'CL_KERNEL_MAX_NUM_SUB_GROUPS',
1642
+ 'CL_KERNEL_MAX_SUB_GROUP_SIZE_FOR_NDRANGE', 'CL_KERNEL_NUM_ARGS',
1643
+ 'CL_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE',
1644
+ 'CL_KERNEL_PRIVATE_MEM_SIZE', 'CL_KERNEL_PROGRAM',
1645
+ 'CL_KERNEL_REFERENCE_COUNT',
1646
+ 'CL_KERNEL_SUB_GROUP_COUNT_FOR_NDRANGE',
1647
+ 'CL_KERNEL_WORK_GROUP_SIZE', 'CL_KHRONOS_VENDOR_ID_CODEPLAY',
1648
+ 'CL_LINKER_NOT_AVAILABLE', 'CL_LINK_PROGRAM_FAILURE', 'CL_LOCAL',
1649
+ 'CL_LUMINANCE', 'CL_MAP_FAILURE', 'CL_MAP_READ', 'CL_MAP_WRITE',
1650
+ 'CL_MAP_WRITE_INVALIDATE_REGION',
1651
+ 'CL_MAX_SIZE_RESTRICTION_EXCEEDED', 'CL_MEM_ALLOC_HOST_PTR',
1652
+ 'CL_MEM_ASSOCIATED_MEMOBJECT', 'CL_MEM_CONTEXT',
1653
+ 'CL_MEM_COPY_HOST_PTR', 'CL_MEM_COPY_OVERLAP', 'CL_MEM_FLAGS',
1654
+ 'CL_MEM_HOST_NO_ACCESS', 'CL_MEM_HOST_PTR',
1655
+ 'CL_MEM_HOST_READ_ONLY', 'CL_MEM_HOST_WRITE_ONLY',
1656
+ 'CL_MEM_KERNEL_READ_AND_WRITE', 'CL_MEM_MAP_COUNT',
1657
+ 'CL_MEM_OBJECT_ALLOCATION_FAILURE', 'CL_MEM_OBJECT_BUFFER',
1658
+ 'CL_MEM_OBJECT_IMAGE1D', 'CL_MEM_OBJECT_IMAGE1D_ARRAY',
1659
+ 'CL_MEM_OBJECT_IMAGE1D_BUFFER', 'CL_MEM_OBJECT_IMAGE2D',
1660
+ 'CL_MEM_OBJECT_IMAGE2D_ARRAY', 'CL_MEM_OBJECT_IMAGE3D',
1661
+ 'CL_MEM_OBJECT_PIPE', 'CL_MEM_OFFSET', 'CL_MEM_PROPERTIES',
1662
+ 'CL_MEM_READ_ONLY', 'CL_MEM_READ_WRITE', 'CL_MEM_REFERENCE_COUNT',
1663
+ 'CL_MEM_SIZE', 'CL_MEM_SVM_ATOMICS',
1664
+ 'CL_MEM_SVM_FINE_GRAIN_BUFFER', 'CL_MEM_TYPE',
1665
+ 'CL_MEM_USES_SVM_POINTER', 'CL_MEM_USE_HOST_PTR',
1666
+ 'CL_MEM_WRITE_ONLY', 'CL_MIGRATE_MEM_OBJECT_CONTENT_UNDEFINED',
1667
+ 'CL_MIGRATE_MEM_OBJECT_HOST', 'CL_MISALIGNED_SUB_BUFFER_OFFSET',
1668
+ 'CL_NAME_VERSION_MAX_NAME_SIZE', 'CL_NONE', 'CL_NON_BLOCKING',
1669
+ 'CL_OUT_OF_HOST_MEMORY', 'CL_OUT_OF_RESOURCES',
1670
+ 'CL_PIPE_MAX_PACKETS', 'CL_PIPE_PACKET_SIZE',
1671
+ 'CL_PIPE_PROPERTIES', 'CL_PLATFORM_EXTENSIONS',
1672
+ 'CL_PLATFORM_EXTENSIONS_WITH_VERSION',
1673
+ 'CL_PLATFORM_HOST_TIMER_RESOLUTION', 'CL_PLATFORM_NAME',
1674
+ 'CL_PLATFORM_NUMERIC_VERSION', 'CL_PLATFORM_PROFILE',
1675
+ 'CL_PLATFORM_VENDOR', 'CL_PLATFORM_VERSION',
1676
+ 'CL_PROFILING_COMMAND_COMPLETE', 'CL_PROFILING_COMMAND_END',
1677
+ 'CL_PROFILING_COMMAND_QUEUED', 'CL_PROFILING_COMMAND_START',
1678
+ 'CL_PROFILING_COMMAND_SUBMIT', 'CL_PROFILING_INFO_NOT_AVAILABLE',
1679
+ 'CL_PROGRAM_BINARIES', 'CL_PROGRAM_BINARY_SIZES',
1680
+ 'CL_PROGRAM_BINARY_TYPE',
1681
+ 'CL_PROGRAM_BINARY_TYPE_COMPILED_OBJECT',
1682
+ 'CL_PROGRAM_BINARY_TYPE_EXECUTABLE',
1683
+ 'CL_PROGRAM_BINARY_TYPE_LIBRARY', 'CL_PROGRAM_BINARY_TYPE_NONE',
1684
+ 'CL_PROGRAM_BUILD_GLOBAL_VARIABLE_TOTAL_SIZE',
1685
+ 'CL_PROGRAM_BUILD_LOG', 'CL_PROGRAM_BUILD_OPTIONS',
1686
+ 'CL_PROGRAM_BUILD_STATUS', 'CL_PROGRAM_CONTEXT',
1687
+ 'CL_PROGRAM_DEVICES', 'CL_PROGRAM_IL', 'CL_PROGRAM_KERNEL_NAMES',
1688
+ 'CL_PROGRAM_NUM_DEVICES', 'CL_PROGRAM_NUM_KERNELS',
1689
+ 'CL_PROGRAM_REFERENCE_COUNT',
1690
+ 'CL_PROGRAM_SCOPE_GLOBAL_CTORS_PRESENT',
1691
+ 'CL_PROGRAM_SCOPE_GLOBAL_DTORS_PRESENT', 'CL_PROGRAM_SOURCE',
1692
+ 'CL_QUEUED', 'CL_QUEUE_CONTEXT', 'CL_QUEUE_DEVICE',
1693
+ 'CL_QUEUE_DEVICE_DEFAULT', 'CL_QUEUE_ON_DEVICE',
1694
+ 'CL_QUEUE_ON_DEVICE_DEFAULT',
1695
+ 'CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE',
1696
+ 'CL_QUEUE_PROFILING_ENABLE', 'CL_QUEUE_PROPERTIES',
1697
+ 'CL_QUEUE_PROPERTIES_ARRAY', 'CL_QUEUE_REFERENCE_COUNT',
1698
+ 'CL_QUEUE_SIZE', 'CL_R', 'CL_RA', 'CL_READ_ONLY_CACHE',
1699
+ 'CL_READ_WRITE_CACHE', 'CL_RG', 'CL_RGB', 'CL_RGBA', 'CL_RGBx',
1700
+ 'CL_RGx', 'CL_RUNNING', 'CL_Rx', 'CL_SAMPLER_ADDRESSING_MODE',
1701
+ 'CL_SAMPLER_CONTEXT', 'CL_SAMPLER_FILTER_MODE',
1702
+ 'CL_SAMPLER_LOD_MAX', 'CL_SAMPLER_LOD_MIN',
1703
+ 'CL_SAMPLER_MIP_FILTER_MODE', 'CL_SAMPLER_NORMALIZED_COORDS',
1704
+ 'CL_SAMPLER_PROPERTIES', 'CL_SAMPLER_REFERENCE_COUNT',
1705
+ 'CL_SIGNED_INT16', 'CL_SIGNED_INT32', 'CL_SIGNED_INT8',
1706
+ 'CL_SNORM_INT16', 'CL_SNORM_INT8', 'CL_SUBMITTED', 'CL_SUCCESS',
1707
+ 'CL_TRUE', 'CL_UNORM_INT16', 'CL_UNORM_INT24', 'CL_UNORM_INT8',
1708
+ 'CL_UNORM_INT_101010', 'CL_UNORM_INT_101010_2',
1709
+ 'CL_UNORM_SHORT_555', 'CL_UNORM_SHORT_565', 'CL_UNSIGNED_INT16',
1710
+ 'CL_UNSIGNED_INT32', 'CL_UNSIGNED_INT8', 'CL_VERSION_MAJOR_BITS',
1711
+ 'CL_VERSION_MAJOR_MASK', 'CL_VERSION_MINOR_BITS',
1712
+ 'CL_VERSION_MINOR_MASK', 'CL_VERSION_PATCH_BITS',
1713
+ 'CL_VERSION_PATCH_MASK', 'CL_sBGRA', 'CL_sRGB', 'CL_sRGBA',
1714
+ 'CL_sRGBx', '__OPENCL_CL_H', 'clBuildProgram', 'clCloneKernel',
1715
+ 'clCompileProgram', 'clCreateBuffer',
1716
+ 'clCreateBufferWithProperties', 'clCreateCommandQueue',
1717
+ 'clCreateCommandQueueWithProperties', 'clCreateContext',
1718
+ 'clCreateContextFromType', 'clCreateImage', 'clCreateImage2D',
1719
+ 'clCreateImage3D', 'clCreateImageWithProperties',
1720
+ 'clCreateKernel', 'clCreateKernelsInProgram', 'clCreatePipe',
1721
+ 'clCreateProgramWithBinary', 'clCreateProgramWithBuiltInKernels',
1722
+ 'clCreateProgramWithIL', 'clCreateProgramWithSource',
1723
+ 'clCreateSampler', 'clCreateSamplerWithProperties',
1724
+ 'clCreateSubBuffer', 'clCreateSubDevices', 'clCreateUserEvent',
1725
+ 'clEnqueueBarrier', 'clEnqueueBarrierWithWaitList',
1726
+ 'clEnqueueCopyBuffer', 'clEnqueueCopyBufferRect',
1727
+ 'clEnqueueCopyBufferToImage', 'clEnqueueCopyImage',
1728
+ 'clEnqueueCopyImageToBuffer', 'clEnqueueFillBuffer',
1729
+ 'clEnqueueFillImage', 'clEnqueueMapBuffer', 'clEnqueueMapImage',
1730
+ 'clEnqueueMarker', 'clEnqueueMarkerWithWaitList',
1731
+ 'clEnqueueMigrateMemObjects', 'clEnqueueNDRangeKernel',
1732
+ 'clEnqueueNativeKernel', 'clEnqueueReadBuffer',
1733
+ 'clEnqueueReadBufferRect', 'clEnqueueReadImage',
1734
+ 'clEnqueueSVMFree', 'clEnqueueSVMMap', 'clEnqueueSVMMemFill',
1735
+ 'clEnqueueSVMMemcpy', 'clEnqueueSVMMigrateMem',
1736
+ 'clEnqueueSVMUnmap', 'clEnqueueTask', 'clEnqueueUnmapMemObject',
1737
+ 'clEnqueueWaitForEvents', 'clEnqueueWriteBuffer',
1738
+ 'clEnqueueWriteBufferRect', 'clEnqueueWriteImage', 'clFinish',
1739
+ 'clFlush', 'clGetCommandQueueInfo', 'clGetContextInfo',
1740
+ 'clGetDeviceAndHostTimer', 'clGetDeviceIDs', 'clGetDeviceInfo',
1741
+ 'clGetEventInfo', 'clGetEventProfilingInfo',
1742
+ 'clGetExtensionFunctionAddress',
1743
+ 'clGetExtensionFunctionAddressForPlatform', 'clGetHostTimer',
1744
+ 'clGetImageInfo', 'clGetKernelArgInfo', 'clGetKernelInfo',
1745
+ 'clGetKernelSubGroupInfo', 'clGetKernelWorkGroupInfo',
1746
+ 'clGetMemObjectInfo', 'clGetPipeInfo', 'clGetPlatformIDs',
1747
+ 'clGetPlatformInfo', 'clGetProgramBuildInfo', 'clGetProgramInfo',
1748
+ 'clGetSamplerInfo', 'clGetSupportedImageFormats', 'clLinkProgram',
1749
+ 'clReleaseCommandQueue', 'clReleaseContext', 'clReleaseDevice',
1750
+ 'clReleaseEvent', 'clReleaseKernel', 'clReleaseMemObject',
1751
+ 'clReleaseProgram', 'clReleaseSampler', 'clRetainCommandQueue',
1752
+ 'clRetainContext', 'clRetainDevice', 'clRetainEvent',
1753
+ 'clRetainKernel', 'clRetainMemObject', 'clRetainProgram',
1754
+ 'clRetainSampler', 'clSVMAlloc', 'clSVMFree',
1755
+ 'clSetContextDestructorCallback',
1756
+ 'clSetDefaultDeviceCommandQueue', 'clSetEventCallback',
1757
+ 'clSetKernelArg', 'clSetKernelArgSVMPointer',
1758
+ 'clSetKernelExecInfo', 'clSetMemObjectDestructorCallback',
1759
+ 'clSetProgramReleaseCallback',
1760
+ 'clSetProgramSpecializationConstant', 'clSetUserEventStatus',
1761
+ 'clUnloadCompiler', 'clUnloadPlatformCompiler', 'clWaitForEvents',
1762
+ 'cl_addressing_mode', 'cl_bitfield', 'cl_bool',
1763
+ 'cl_buffer_create_type', 'cl_buffer_region', 'cl_build_status',
1764
+ 'cl_channel_order', 'cl_channel_type', 'cl_command_queue',
1765
+ 'cl_command_queue_info', 'cl_command_queue_properties',
1766
+ 'cl_command_type', 'cl_context', 'cl_context_info',
1767
+ 'cl_context_properties', 'cl_device_affinity_domain',
1768
+ 'cl_device_atomic_capabilities',
1769
+ 'cl_device_device_enqueue_capabilities',
1770
+ 'cl_device_exec_capabilities', 'cl_device_fp_config',
1771
+ 'cl_device_id', 'cl_device_info', 'cl_device_local_mem_type',
1772
+ 'cl_device_mem_cache_type', 'cl_device_partition_property',
1773
+ 'cl_device_svm_capabilities', 'cl_device_type', 'cl_event',
1774
+ 'cl_event_info', 'cl_filter_mode', 'cl_image_desc',
1775
+ 'cl_image_format', 'cl_image_info', 'cl_int', 'cl_kernel',
1776
+ 'cl_kernel_arg_access_qualifier',
1777
+ 'cl_kernel_arg_address_qualifier', 'cl_kernel_arg_info',
1778
+ 'cl_kernel_arg_type_qualifier', 'cl_kernel_exec_info',
1779
+ 'cl_kernel_info', 'cl_kernel_sub_group_info',
1780
+ 'cl_kernel_work_group_info', 'cl_khronos_vendor_id',
1781
+ 'cl_map_flags', 'cl_mem', 'cl_mem_flags', 'cl_mem_info',
1782
+ 'cl_mem_migration_flags', 'cl_mem_object_type',
1783
+ 'cl_mem_properties', 'cl_name_version', 'cl_pipe_info',
1784
+ 'cl_pipe_properties', 'cl_platform_id', 'cl_platform_info',
1785
+ 'cl_profiling_info', 'cl_program', 'cl_program_binary_type',
1786
+ 'cl_program_build_info', 'cl_program_info', 'cl_properties',
1787
+ 'cl_queue_properties', 'cl_sampler', 'cl_sampler_info',
1788
+ 'cl_sampler_properties', 'cl_svm_mem_flags', 'cl_uint',
1789
+ 'cl_version', 'size_t', 'struct__cl_buffer_region',
1790
+ 'struct__cl_command_queue', 'struct__cl_context',
1791
+ 'struct__cl_device_id', 'struct__cl_event',
1792
+ 'struct__cl_image_desc', 'struct__cl_image_format',
1793
+ 'struct__cl_kernel', 'struct__cl_mem', 'struct__cl_name_version',
1794
+ 'struct__cl_platform_id', 'struct__cl_program',
1795
+ 'struct__cl_sampler', 'union__cl_image_desc_0']