OpenCL 3.0.12 发布,带有命令缓冲区可变调度扩展

Khronos Group 已发布 OpenCL 3.0.12 作为此 API 的最新版本,用于跨异构平台计算,但主要以 GPU 计算而闻名。

OpenCL 3.0.12 中记录的更改为:

* 添加了有效对象的定义和测试有效对象的要求。
* 添加了内核支持的参数数量的最大限制。
* 明确了对象句柄的可比性和唯一性要求。
* 澄清了无效设备端入队“clk_event_t”句柄的行为。
* 澄清了 `cl_khr_command_buffer` 与其他扩展的交互。
* 指定命令缓冲区多次完成时的错误行为。

最值得注意的是引入了一个新的扩展,用于使用命令缓冲区进行可变调度。cl_khr_command_buffer_mutable_dispatch是 OpenCL 3.0.12 中的新功能,并以临时形式引入。cl_khr_command_buffer_mutable_dispatch 扩展允许在命令缓冲区队列之间修改内核执行命令的配置。

image.php_-50

cl_khr_command_buffer_mutable_dispatch 扩展由 Codeplay、Qualcomm、Arm、英特尔、坦佩雷大学、NVIDIA 和 Google 的工程师开发,以克服 cl_khr_command_buffer 的限制,即命令缓冲区中记录的命令在队列之间是不可变的。

cl_khr_command_buffer 扩展通过提供一种记录一组命令的机制将命令构造与入队分开,然后这些命令可以重复入队。但是,记录到命令缓冲区的命令在队列之间是不可变的。

cl_khr_command_buffer_mutable_dispatch 消除了这个限制,特别是,这个扩展允许修改命令缓冲区中的内核执行命令的配置,称为 mutable-dispatch。这允许内核的输入和输出,以及工作项的大小和偏移量,而无需在新的命令缓冲区中重新记录整个命令序列。

原创文章,作者:校长,如若转载,请注明出处:https://www.yundongfang.com/Yun191017.html

(0)
打赏 微信扫一扫不于多少! 微信扫一扫不于多少! 支付宝扫一扫礼轻情意重 支付宝扫一扫礼轻情意重
上一篇 2022年9月16日 下午8:52
下一篇 2022年9月16日

相关推荐