OpenCL 3.0

OpenCL 3.0

OpenCL 3.0 makes the OpenCL ecosystem much more flexible by enabling vendors to focus their resources on functionality that their customers need. This is achieved by slicing all functionality beyond OpenCL 1.2 into optional features that can be queried in the API, with macros to indicate whether optional OpenCL C language features are present. This flexibility sets the stage for new extensions that becomes widely useful to be incrementally integrated into new OpenCL core specifications.

OpenCL 3.0使供应商能够将资源集中在客户需要的功能上,从而使OpenCL生态系统更加灵活。这是通过将OpenCL 1.2以外的所有功能划分为可选功能来实现的,这些功能可以在API中查询,并使用宏来指示是否存在可选的OpenCL C语言功能。这种灵活性为新的扩展奠定了基础,这些扩展在增量集成到新的OpenCL核心规范中变得非常有用。

OpenCL 3.0 officially removed the OpenCL C++ language from the specification, and recommends the C++ for OpenCL front end compiler for those developers that wish to use C++17 for writing kernel programs.

​OpenCL 3.0正式从规范中删除了OpenCL C++语言,并为那些希望使用C++17编写内核程序的开发人员推荐了用于OpenCL的C++前端编译器。

Developers will find OpenCL 3.0 much easier to use as it uses a unified specification that describes all versions of OpenCL in one place rather than having a separate specification per version, making it much easier for developers to navigate as well as making it much easier to consistently apply specification fixes and clarifications. The unified OpenCL 3.0 specification also describes the rationale behind the specification's evolution.

开发人员会发现OpenCL 3.0更容易使用,因为它使用了一个统一的规范,在一个地方描述所有版本的OpenCL,而不是每个版本都有一个单独的规范,这使得开发人员更容易导航,也更容易一致地应用规范修复和澄清。统一的OpenCL 3.0规范还描述了规范发展背后的基本原理。

The source of the OpenCL 3.0 specification is hosted on the Khronos GitHub for easy access, and the OpenCL Working Group welcomes community bug reports and pull requests to help improve the specification for everyone.

​OpenCL 3.0规范的源代码托管在Khronos GitHub上,便于访问,OpenCL工作组欢迎社区错误报告和拉取请求,以帮助改善每个人的规范。



The OpenCL 3.0 Reference Guide

OpenCL 3.0参考指南

The OpenCL Working Group has also constructed a summary of the OpenCL 3.0 specification into a condensed Reference Guide that can be downloaded as a PDF.

​OpenCL工作组还将OpenCL 3.0规范的摘要构建成了一个浓缩的参考指南,可以下载为PDF。

Moving Applications to OpenCL 3.0

将应用程序迁移到OpenCL 3.0

If you have existing applications running on any older version of OpenCL, using OpenCL 3.0 is straightforward.

如果现有应用程序运行在任何旧版本的OpenCL上,那么使用OpenCL3.0是很简单的。

  • Applications using OpenCL 1.2 will run unchanged on any OpenCL 3.0 device as all OpenCL 1.2 functionality will work on any OpenCL 3.0 driver with no code changes.
  • 使用OpenCL 1.2的应用程序将在任何OpenCL 3.0设备上运行,因为所有OpenCL 1.2功能都将在任何OpenCL 3.0驱动程序上运行,而无需更改代码。
  • OpenCL 2.X applications will also continue to work on OpenCL 3.0 with no code changes if the OpenCL 3.0 driver supports all the functionality used by the application. If you are running on a device that upgrades its drivers from 2.X to 3.0 it would be expected that all functionality will continue to be supported and so no application changes will be needed.
  • 如果OpenCL3.0驱动程序支持应用程序使用的所有功能,那么OpenCL2.X应用程序也将继续在OpenCL3.0上工作,而不会更改代码。如果运行的设备将其驱动程序从2.X升级到3.0,那么所有功能都将继续得到支持,因此不需要更改应用程序。
  • Applications that wish to run portably across multiple OpenCL 3.0 devices, and use OpenCL 2.X-level features, are strongly encouraged to query to ensure that functionality is available. All OpenCL 2.X API features can be queried, and OpenCL C 3.0 macros indicate whether optional language features are present.
  • 强烈鼓励希望在多个OpenCL 3.0设备上可移植运行并使用OpenCL 2.X级功能的应用程序进行查询,以确保功能可用。所有OpenCL 2.X API功能都可以查询,并且OpenCL C 3.0宏指示是否存在可选的语言功能。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值