Hacker News new | ask | show | jobs
by matthiasv 2043 days ago
> Meanwhile OpenCL is falling apart and sees less and less support and updates.

I think this view is too pessimistic. In fact, support either gets better (Intel oneAPI, Microsoft CLonD3D12, AMD ROCm, Mesa NIR-clover, …) or is unchanged but still maintained (NVIDIA). Moreover, Khronos noticed that OpenCL 2.x was a dead end and was to start over from a point that all vendors could agree on.

2 comments

> Moreover, Khronos noticed that OpenCL 2.x was a dead end and was to start over from a point that all vendors could agree on.

I don't know much about OpenCL and this statement confused me. Are you saying that OpenCL 2.x is dead, which seems to contradict what you just said? Unless there's a newer version that isn't dead - is there an OpenCL 3.x? Or is Kronos a code name for OpenCL 3?

There is an OpenCL 3.0. The changes were basically "make everything in OpenCL 2.0 that was not widely implemented optional."

> Looking to reset the ecosystem, as the group likes to call it, today Khronos is revealing OpenCL 3.0, the latest version of their compute API. Taking some hard earned (and hard learned) lessons to heart, the group is turning back the clock on OpenCL, reverting the core API to a fork of OpenCL 1.2.

> As a result, everything developed as part of OpenCL 2.x has now become optional: vendors can (and generally will) continue to support those features, but those features are no longer required for compliance with the core specification.

https://www.anandtech.com/show/15746/opencl-30-announced-hit...

OK, I see. So they were referring to OpenCL 3.x, and Kronos is the organisation that created that standard.
The fact that oneAPI depends on OpenCL on some platforms is mostly an implementation detail, though, and isn't generally visible to applications, which are written in SYCL/DPC++. The current works to implement oneAPI for AMD and Nvidia hardware don't use OpenCL (hipSYCL and sycl-cuda). IMO, that some people think oneAPI is the future is an indication that OpenCL is "falling apart," not evidence that it is improving.

Vendors which have had decent OpenCL implementations for a long time (i.e. Intel) will implement oneAPI on top of OpenCL, others will not (if they implement oneAPI at all).

oneAPI is not being run on top of OpenCL; it's being run on top of Level Zero. Although I think the CPU runtime is still using the OpenCL driver for the moment.
That depends if you use the OpenCL SYCL backend or the Level Zero SYCL backend. The latter has only existed for a few months.

but yeah, I think the default backend switched to level zero recently, so strikethrough the last sentence of my comment - apparently nobody will focus on opencl as a oneAPI backend.