You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					29 lines
				
				952 B
			
		
		
			
		
	
	
					29 lines
				
				952 B
			| 
											5 years ago
										 | #pragma once
 | ||
| 
											6 years ago
										 | 
 | ||
|  | #ifdef __APPLE__
 | ||
|  | #include <OpenCL/cl.h>
 | ||
|  | #else
 | ||
|  | #include <CL/cl.h>
 | ||
|  | #endif
 | ||
|  | 
 | ||
| 
											4 years ago
										 | #include <string>
 | ||
|  | 
 | ||
| 
											5 years ago
										 | #define CL_CHECK(_expr)          \
 | ||
|  |   do {                           \
 | ||
| 
											4 years ago
										 |     assert(CL_SUCCESS == (_expr)); \
 | ||
| 
											5 years ago
										 |   } while (0)
 | ||
|  | 
 | ||
|  | #define CL_CHECK_ERR(_expr)           \
 | ||
|  |   ({                                  \
 | ||
|  |     cl_int err = CL_INVALID_VALUE;    \
 | ||
|  |     __typeof__(_expr) _ret = _expr;   \
 | ||
|  |     assert(_ret&& err == CL_SUCCESS); \
 | ||
|  |     _ret;                             \
 | ||
|  |   })
 | ||
|  | 
 | ||
| 
											5 years ago
										 | cl_device_id cl_get_device_id(cl_device_type device_type);
 | ||
| 
											4 years ago
										 | cl_program cl_program_from_source(cl_context ctx, cl_device_id device_id, const std::string& src, const char* args = nullptr);
 | ||
|  | cl_program cl_program_from_binary(cl_context ctx, cl_device_id device_id, const uint8_t* binary, size_t length, const char* args = nullptr);
 | ||
| 
											5 years ago
										 | cl_program cl_program_from_file(cl_context ctx, cl_device_id device_id, const char* path, const char* args);
 | ||
| 
											6 years ago
										 | const char* cl_get_error_string(int err);
 |