The website says it is also a compute API. I haven't heard this before; I didn't know Vulkan came with a GPGPU stack. Does anyone have any experience looking at the compute aspects of Vulkan and how it compares to OpenCL?
I wanted to take a squiz at making GPU compute code for "fun" and I'm wondering if Vulkan compute is worth looking at.
Vulkan has explicit compute command queues. It is worth noting that OpenCL 2.1 compiles to the same SPIR-V bytecode that Vulkan drivers consume, you just generate it with a C API rather than GLSL, but either turn into the same thing.
The API itself supports some very cool compute functionality, such as asynchronously scheduled compute jobs. However, this functionality only exists on AMD hardware (to my knowledge). NVIDIA doesn't support it in HW (yet), and I don't _think_ it's in Intel HW natively. I don't think I've seen it in any other compute API either.
I've seen asynchronous DMAs + command execution (copy engine) exposed in some APIs, but not asynchronous compute shaders.
I wanted to take a squiz at making GPU compute code for "fun" and I'm wondering if Vulkan compute is worth looking at.