Vulkan 1.3.239 Released With New Huawei Extension
While there tend to be new Vulkan API specification updates weekly or bi-weekly for most of the year, there was a one month hiatus due to Christmas and other end of year holidays with many of the corporate developers taking time off work. But that is now over and out today is Vulkan 1.3.239 as the first update in exactly one month.
Due to the extended period of time since Vulkan 1.3.238, there are quite a number of random fixes across the board with today's spec update. Nothing too major though from the fixes and clarifications.
One addition worth mentioning is the VK_DRIVER_ID_IMAGINATION_OPEN_SC driver ID addition, which is for Imagination's open-source Vulkan driver. Imagination's open-source Vulkan driver continues improving within Mesa. (Separately Imagination also has their PowerVR Rogue DRM kernel driver that is still working its way to the mainline kernel.)
Just one new Vulkan extension was finalized over the past month and that's a new vendor extension from Huawei. With Vulkan 1.3.239 is the introduction of VK_HUAWEI_cluster_culling_shader. Huawei's cluster culling shader extension is described as:
The full list of Vulkan 1.3.239 changes can be found via Vulkan-Docs.
Due to the extended period of time since Vulkan 1.3.238, there are quite a number of random fixes across the board with today's spec update. Nothing too major though from the fixes and clarifications.
One addition worth mentioning is the VK_DRIVER_ID_IMAGINATION_OPEN_SC driver ID addition, which is for Imagination's open-source Vulkan driver. Imagination's open-source Vulkan driver continues improving within Mesa. (Separately Imagination also has their PowerVR Rogue DRM kernel driver that is still working its way to the mainline kernel.)
Just one new Vulkan extension was finalized over the past month and that's a new vendor extension from Huawei. With Vulkan 1.3.239 is the introduction of VK_HUAWEI_cluster_culling_shader. Huawei's cluster culling shader extension is described as:
"Cluster Culling Shader(CCS) is similar to the existing compute shader; its main purpose is to provide an execution environment in order to perform coarse-level geometry culling and level-of-detail selection more efficiently on GPU.
The traditional 2-pass GPU culling solution using compute shader needs a pipeline barrier between compute pipeline and graphics pipeline, sometimes, in order to optimize performance, an additional compaction process may also be required. this extension improve the above mentioned shortcomings which can allow compute shader directly emit visible clusters to following graphics pipeline.
A set of new built-in output variables are used to express visible cluster, in addition, a new built-in function is used to emit these variables from CCS to IA stage, then IA can use these variables to fetches vertices of visible cluster and drive vertex shader to shading these vertices. As stated above, both IA and vertex shader are preserved, vertex shader still used for vertices position shading, instead of directly outputting a set of transformed vertices from compute shader, this makes CCS more suitable for mobile GPUs."
The full list of Vulkan 1.3.239 changes can be found via Vulkan-Docs.
6 Comments