1、OpenCL错误码和说明
2021年11月1日17:39:30:
增加:错误码为-11时,除了语法错误,还有可能是OPENCL不支持数据的扩展精度,导致错误。如ARM的某些GPU上就禁用了fp64位,此时使用double会报-11的错误。
1 #define CL_SUCCESS 0 2 命令成功执行,没有出现错误 3 #define CL_DEVICE_NOT_FOUND -1 4 未发现与条件匹配的OpenCL设备 5 #define CL_DEVICE_NOT_AVAILABLE -2 6 OpenCL设备目前不可用 7 #define CL_COMPILER_NOT_AVAILABLE -3 8 程序由源代码创建,不过没有可用的OpenCL C编译器 9 #define CL_MEM_OBJECT_ALLOCATION_FAILURE -4 10 无法为内存对象或图像对象分配内存 11 #define CL_OUT_OF_RESOURCES -5 12 没有足够的资源执行命令 13 #define CL_OUT_OF_HOST_MEMORY -6 14 宿主机上没有足够的内存执行命令 15 #define CL_PROFILING_INFO_NOT_AVAILABLE -7 16 无法得到事件的性能评测信息或者命令队列不支持性能评测 17 #define CL_MEM_COPY_OVERLAP -8 18 两个缓冲区在同一个内存区域重叠 19 #define CL_IMAGE_FORMAT_MISMATCH -9 20 图像未采用相同的图像格式 21 #define CL_IMAGE_FORMAT_NOT_SUPPORTED -10 22 不支持指定的图像格式 23 #define CL_BUILD_PROGRAM_FAILURE -11 24 无法为程序构建可执行代码(此处纠错需要查看源码语法) 25 #define CL_MAP_FAILURE -12 26 内存区域无法映射到宿主机内存 27 #define CL_MISALIGNED_SUB_BUFFER_OFFSET -13 28 #define CL_EXEC_STATUS_ERROR_FOR_EVENTS_IN_WAIT_LIST -14 29 #define CL_COMPILE_PROGRAM_FAILURE -15 30 #define CL_LINKER_NOT_AVAILABLE -16 31 #define CL_LINK_PROGRAM_FAILURE -17 32 #define CL_DEVICE_PARTITION_FAILED -18 33 #define CL_KERNEL_ARG_INFO_NOT_AVAILABLE -19 34 #define CL_INVALID_VALUE -30 35 命令的一个或多个参数指定了非法值 36 #define CL_INVALID_DEVICE_TYPE -31 37 传入的设备类型不是合法值 38 #define CL_INVALID_PLATFORM -32 39 传入的平台不是合法值 40 #define CL_INVALID_DEVICE -33 41 传入的设备不是合法值 42 #define CL_INVALID_CONTEXT -34 43 传入的上下文不是合法值 44 #define CL_INVALID_QUEUE_PROPERTIES -35 45 设备不支持命令队列属性 46 #define CL_INVALID_COMMAND_QUEUE -36 47 传入的命令队列不是合法值 48 #define CL_INVALID_HOST_PTR -37 49 宿主机指针不合法 50 #define CL_INVALID_MEM_OBJECT -38 51 传入的内存对象不是合法值 52 #define CL_INVALID_IMAGE_FORMAT_DESCRIPTOR -39 53 传入的图像格式描述符不是合法值 54 #define CL_INVALID_IMAGE_SIZE -40 55 设备不支持这个图像大小 56 #define CL_INVALID_SAMPLER -41 57 传入的采样工具不是合法值 58 #define CL_INVALID_BINARY -42 59 传入了非法的二进制程序 60 #define CL_INVALID_BUILD_OPTIONS -43 61 一个或多个构建选项不合法 62 #define CL_INVALID_PROGRAM -44 63 传入的程序不是合法值 64 #define CL_INVALID_PROGRAM_EXECUTABLE -45 65 程序未能成功地构建命令队列关联设备上的一个可执行程序 66 #define CL_INVALID_KERNEL_NAME -46 67 程序中不存在指定的内核 68 #define CL_INVALID_KERNEL_DEFINITION -47 69 程序源代码中定义的内核不合法 70 #define CL_INVALID_KERNEL -48 71 传入的内核不是合法值 72 #define CL_INVALID_ARG_INDEX -49 73 参数索引指示的参数对于内核不合法 74 #define CL_INVALID_ARG_VALUE -50 75 对于一个非局部参数,内核参数值为NULL;或者对于一个局部参数,内核参数值为非NULL 76 #define CL_INVALID_ARG_SIZE -51 77 参数大小与内核参数不一致 78 #define CL_INVALID_KERNEL_ARGS -52 79 一个或多个内核参数未赋值 80 #define CL_INVALID_WORK_DIMENSION -53 81 工作维度值不是介于1~3的一个值 82 #define CL_INVALID_WORK_GROUP_SIZE -54 83 局部或全局工作组大小不合法 84 #define CL_INVALID_WORK_ITEM_SIZE -55 85 一个或多个工作项大小超出了设备支持的最大大小 86 #define CL_INVALID_GLOBAL_OFFSET -56 87 全局偏移量超出了所支持的界限 88 #define CL_INVALID_EVENT_WAIT_LIST -57 89 提供的等待列表大小不合法或者其中包含非事件 90 #define CL_INVALID_EVENT -58 91 传入的事件不是一个合法值 92 #define CL_INVALID_OPERATION -59 93 执行命令导致出现一个不合法的操作 94 #define CL_INVALID_GL_OBJECT -60 95 OpenGL引用的对象存在问题 96 #define CL_INVALID_BUFFER_SIZE -61 97 指定的缓冲区大小越界 98 #define CL_INVALID_MIP_LEVEL -62 99 为OpenGL纹理指定的mipmap级别对于OpenGL对象不合法 100 #define CL_INVALID_GLOBAL_WORK_SIZE -63 101 传入的全局工作大小不合法,可能为0或者超出了设备支持的大小 102 #define CL_INVALID_PROPERTY -64 103 #define CL_INVALID_IMAGE_DESCRIPTOR -65 104 #define CL_INVALID_COMPILER_OPTIONS -66 105 #define CL_INVALID_LINKER_OPTIONS -67 106 #define CL_INVALID_DEVICE_PARTITION_COUNT -68View Code
转自:https://blog.csdn.net/weixin_42702728/article/details/118576774
标签:内核,CL,opencl,INVALID,合法,错误码,传入,define From: https://www.cnblogs.com/peifx/p/16988954.html