



























Released earlier this month was the OpenCL 3.1 specification with a focus on enhancing AI and HPC workloads for this long-time Khronos specification. Out today is OpenCL 3.1.1 as a point release with an emphasis on addressing a possible performance regression of OpenCL 3.1.
OpenCL 3.1.1 reverts the short-lived OpenCL 3.1 behavior of clGetEventInfo returning CL_COMPLETE as a host synchronization point. Those wanting a host synchronization point should instead call a function waiting on the OpenCL event instead like with clWaitForEvents. The pull request argued the change in behavior back to its OpenCL 3.0 semantics to avoid a performance regression with the cost of host synchronization:
"This PR changes the behavior of clGetEventInfo(CL_EVENT_COMMAND_EXECUTION_STATUS) returning CL_COMPLETE back to the behavior in OpenCL 3.0. This avoids a potential performance regression when the stronger host synchronization point is not needed, for example to determine if the event is CL_COMPLETE to query event profiling data."
OpenCL 3.1.1 also reserves some enum blocks for forthcoming Intel and Qualcomm extensions. Plus a few other minor fixes but the main change and motivating this quick point release is for reverting the clGetEventInfo behavior.
The OpenCL 3.1.1 spec can be found on GitHub.
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。