OpenCL和OpenCL嵌入式配置文件之间的主要区别
最近我在一些开发板上看到了OpenCLEP支持,比如OdroidXu。我知道的一件事是OpenCL EP是针对ARM处理器的,但它与基于桌面的OpenCL有哪些不同的功能。标准中的第10节回答了您的问题。本节专门介绍OCL嵌入式配置文件,ans首先列举了该配置文件所暗示的限制。以下列举了主要差异(从OpenCL 1.2开始):OpenCL和OpenCL嵌入式配置文件之间的主要区别,opencl,Opencl,最近我在一些开发板上看到了OpenCLEP支持,比如OdroidXu。我知道的一件事是OpenCL EP是针对ARM处理器的,但它与基于桌面的OpenCL有哪些不同的功能。标准中的第10节回答了您的问题。本节专门介绍OCL嵌入式配置文件,ans首先列举了该配置文件所暗示的限制。以下列举了主要差异(从OpenCL 1.2开始): 64位整数支持是可选的 支持3D图像是可选的 支持二维图像数组写入是可选的。如果cles\u khr\u 2d\u image\u array\u写入 嵌入式配置文件支
- 64位整数支持是可选的
- 支持3D图像是可选的
- 支持二维图像数组写入是可选的。如果
嵌入式配置文件支持扩展,支持对二维图像阵列的写入cles\u khr\u 2d\u image\u array\u写入
- 图像和图像阵列的可用通道数据类型存在一些限制(特别是通道数据类型为
和CL\u FLOAT
的图像仅支持CL\u HALF\u FLOAT
采样器过滤模式)CL\u FILTER\u NEAREST
- 图像和图像阵列可用的采样器寻址模式存在限制
- 您可能需要考虑一些浮点舍入更改
- 浮点加法、减法和乘法将始终正确舍入,其他运算(如除法和平方根)的精度各不相同。还有很多其他的浮点运算需要注意
- 整数数据类型和浮点整数之间的转换精度有限(但也有例外)
clGetDeviceInfo
文档看到,其中说明:
CL_DEVICE_COMPILER_AVAILABLE: Return type: cl_bool
Is CL_FALSE if the implementation does not have a compiler available
to compile the program source. Is CL_TRUE if the compiler is available.
This can be CL_FALSE for the embededed (sic) platform profile only.
要获得OpenCL嵌入式概要文件规范的完整详细列表,请启动PDF阅读器,下载OpenCL规范(无论您开发的是哪个版本),并找到相关部分。有趣的是,这是否意味着用OpenCL 1.1编写的神经网络结果可能不会产生正确的输出?