内容提要
Khronos Group 发布了 OpenCL 3.0.19 文档,新增了 cl_khr_spirv_queries 和 cl_khr_external_memory_android_hardware_buffer 扩展,支持 SPIR-V 查询和 Android AHardwareBuffer。cl_khr_kernel_clock 扩展已标记为最终版本,cl_khr_external_semaphore_dx_fence 扩展重新作为实验性添加。
关键要点
-
Khronos Group 发布了 OpenCL 3.0.19 文档,作为 OpenCL 3.0 计算 API 的最新规范。
-
新增扩展 cl_khr_spirv_queries,提供查询功能以确定 OpenCL 设备支持的 SPIR-V 扩展指令集和功能。
-
新增扩展 cl_khr_external_memory_android_hardware_buffer,支持从 Android AHardwareBuffer 创建 OpenCL 图像或缓冲区对象。
-
cl_khr_kernel_clock 扩展被标记为最终版本,脱离实验状态。
-
重新添加实验性扩展 cl_khr_external_semaphore_dx_fence,允许将 Direct3D 12 栅栏作为外部信号量导入和导出。
-
OpenCL 3.0.19 文档可从 GitHub 下载。
延伸解读
SPIR-V 查询扩展的意义
cl_khr_spirv_queries 扩展的引入,使得开发者能够更方便地了解特定 OpenCL 设备支持的 SPIR-V 扩展指令集。这对于优化应用程序性能和确保兼容性至关重要,尤其是在多平台开发时。
Android 硬件缓冲区的支持
cl_khr_external_memory_android_hardware_buffer 扩展的推出,标志着 OpenCL 在 Android 平台上的进一步整合。这一改进将有助于提升图像处理和计算任务的效率,尤其是在移动设备上,开发者应关注其在实际应用中的表现。
实验性扩展的风险
虽然 cl_khr_external_semaphore_dx_fence 扩展被重新添加为实验性,但使用实验性功能时需谨慎。这类扩展可能存在不稳定性或兼容性问题,开发者在使用时应做好充分测试,以避免潜在的应用崩溃或性能下降。
延伸问答
OpenCL 3.0.19 的主要更新内容是什么?
OpenCL 3.0.19 新增了 cl_khr_spirv_queries 和 cl_khr_external_memory_android_hardware_buffer 扩展,并将 cl_khr_kernel_clock 标记为最终版本。
cl_khr_spirv_queries 扩展的功能是什么?
cl_khr_spirv_queries 扩展提供查询功能,以确定 OpenCL 设备支持的 SPIR-V 扩展指令集和功能。
cl_khr_external_memory_android_hardware_buffer 扩展有什么作用?
该扩展允许从 Android AHardwareBuffer 创建 OpenCL 图像或缓冲区对象,增强了 OpenCL 对外部内存的支持。
cl_khr_kernel_clock 扩展的状态如何?
cl_khr_kernel_clock 扩展已被标记为最终版本,脱离了实验状态。
OpenCL 3.0.19 中重新添加了哪个实验性扩展?
OpenCL 3.0.19 重新添加了实验性的 cl_khr_external_semaphore_dx_fence 扩展。
OpenCL 3.0.19 文档可以在哪里下载?
OpenCL 3.0.19 文档可以从 GitHub 下载。