Khronos宣布了OpenCL 3.0,这些是更加引人注目的功能

赫罗诺斯关注,负责开发OpenGL,Vulkan和OpenCL系列的规范, 宣布完成OpenCL 3.0规范的开发 定义了API和C语言扩展,以使用多核CPU,GPU,FPGA,DSP和其他专用芯片来组织多平台并行计算。

这些都是 从超级计算机和云服务器到芯片 可以找到 在移动设备和嵌入式技术上。 OpenCL标准是完全开放的。 IBM,NVIDIA,Intel,AMD,Apple,ARM,Electronic Arts,Qualcomm,Texas Instruments和Toshiba等公司参加了有关该标准的工作。

在规范的当前阶段,状态为临时,这意味着可以根据通过GitHub发送的评论进行优化。 考虑到注释后,规范将获得最终状态,最终测试套件将发布以验证现有实现的兼容性。

OpenCL 3.0功能

OpenCL 3.0 API现在涵盖所有OpenCL版本 (1.2,2.x),而没有为每个版本提供单独的规范。 OpenCL 3.0 通过集成其他规范,可以扩展基本功能, 它将以选项的形式进行排列,而不会妨碍OpenCL 1.2 / 2.X的整体性质。

声明仅符合OpenCL 1.2的功能是强制性的 以及规格中提供的所有功能 OpenCL 2.x被分类为可选。 这种方法将简化创建符合OpenCL 3.0的专门实现,并扩大可以使用OpenCL 3.0的设备范围。

例如,制造商可以实现对OpenCL 3.0的支持,而无需实现OpenCL 2.x的各个功能。 要访问可选的语言功能, OpenCL 3.0添加了一个测试查询系统,可让您评估支持 用于单个API元素以及特殊宏。

规格统一 先前发表 使将应用程序轻松转移到OpenCL 3.0变得很容易。 OpenCL 1.2应用程序将能够在支持OpenCL 3.0的设备上运行,而无需进行任何修改。 OpenCL 2.x应用程序也不需要更改代码,但是如果OpenCL 3.0环境提供了必要的功能(为确保将来的可移植性,建议OpenCL 2.x应用程序添加测试查询以评估与OpenCL 2的兼容性。 x个函数)。

控制器开发人员 与OpenCL实现 他们将能够轻松地将其产品升级到OpenCL 3.0, 仅针对某些API调用的存在添加请求处理,并随着时间的推移逐渐增加功能。

OpenCL 3.0规范与 环境,扩展和规格 SPIR-V通用中间视图, 它也使用Vulkan API。 对SPIR-V 1.3规范的支持作为可选功能包含在OpenCL 3.0内核中。 通过将SPIR-V中间表示形式用于计算核心,已添加了对带有子组的操作的支持。

添加 支持扩展以执行异步DMA操作,与具有直接存储器访问功能的类DSP芯片兼容。 异步DMA允许您使用DMA事务以异步模式在全局和本地内存之间传输数据,同时执行计算或其他数据传输操作。

C的并行编程扩展规范已更新至3.0版,并且针对C的OpenCL语言扩展的开发 为支持“ OpenCL的C ++”项目而停止使用C ++。

OpenCL的C ++是基于Clang / LLVM的编译器 它将C ++和OpenCL C内核转换为中间的SPIR-V表示形式或低级机器代码。 通过转换为SPIR-V,还可以使用SYCL模板库来组织C ++应用程序的编译,从而简化了并行应用程序的创建。

为了通过Vulkan API转换OpenCL,提出了clspv编译器,该编译器将OpenCL内核转换为Vulkan SPIR-V视图和clvk层,以允许OpenCL API在Vulkan之上运行。

数据来源: https://www.khronos.org


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责资料:AB Internet Networks 2008 SL
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。