首页 > 其他分享 >opencl错误码

opencl错误码

时间:2022-12-17 14:34:25浏览次数:59  
标签:内核 CL opencl INVALID 合法 错误码 传入 define

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           -68
View Code

转自:https://blog.csdn.net/weixin_42702728/article/details/118576774

标签:内核,CL,opencl,INVALID,合法,错误码,传入,define
From: https://www.cnblogs.com/peifx/p/16988954.html

相关文章

  • opencl实现图像旋转(二维数组)。
    改写自:https://zhuanlan.zhihu.com/p/451101452,该用零拷贝方案。1、host函数1#include<CL/cl.h>2#include<stdio.h>3#include<stdlib.h>4#include<......
  • opencl优化-Zero Copy
    转自:https://www.cnblogs.com/willhua/tag/OpenCL/有两种方式实现从主机到CL设备的数据传递,第一种:1cl_meminput=clCreateBuffer(context,CL_MEM_READ_ONLY,sizeof(f......
  • opencl 学习kernel,work_item和workgroup,工作组,工作项的理解
    https://zhuanlan.zhihu.com/p/558573914https://www.cnblogs.com/biglucky/p/3755189.html转载自:http://www.cmnsoft.com/wordpress/?p=1429前几节我们一起学习了几个......
  • opencl 教程
    这是第一篇真正的OpenCL教程。这篇文章不会从GPU结构的技术概念和性能指标入手。我们将会从OpenCL的基础API开始,使用一个小的kernel作为例子来讲解基本的计算管理。首先我......
  • Win32 GetLastError 获取函数执行的错误码
    函数说明   一般Win32函数执行出错,没有错误码返回的情况下,可以调用该函数尝试获取最后的错误信息。例子if(!SetLocalTime(&pst)){std::int64_tnRet=......
  • spring mvc环境之异常错误码的统一返回(十五)
    1.根据不同的请求方式,返回页面或json数据1).创建统一权限异常处理类,所有的权限异常走一个端口2).根据请求方式不同返回不同数据,页面请求返回403未授权页面,ajax请......
  • OpenCL错误码
    错误描述CL_SUCCESS命令成功执行,没有出现错误CL_DEVICE_NOT_FOUND未发现与条件匹配的OpenCL设备CL_DEVICE_NOT_AVAILABLEOpenCL设备目前不可用CL_COMPILER_NOT_AVA......
  • OpenCL:图像处理基础note
    使用图像对象的理由虽然对于图像也可以把它的像素数据当做一般的缓存数据来处理,但是如果把它当做图像来处理有如下好处:在GPU中,图像数据是保存在特殊的全局内存中,即纹理......
  • OpenClash 订阅信息正常,配置文件正常,为什么上不了国外网站?
    环境:ESXI虚拟X64硬件,系统OpenWrtX64版本。1、注意查看代理模式(自己在全局设置中设置的系统启动默认模式),尽量选择Rule模式;2、检查OpenWrt的NTP功能,确认NTP客户端功能为关......
  • OpenCL编程之二
    白嫖来的C端代码:matrix.c:#include<stdio.h>#include<stdlib.h>#include<alloca.h>#include<CL/cl.h>#pragmawarning(disable:4996)intmain(){cl_interror;......