Vulkan 1.3.293 Released With NVIDIA Command Buffer Inheritance Extension
([Vulkan] 3 Hours Ago
Vulkan 1.3.293)
- Reference: 0001486182
- News link: https://www.phoronix.com/news/Vulkan-1.3.293-Released
- Source link:
Vulkan 1.3.293 released on Friday as the newest specification for this industry standard graphics and compute API. In addition to a handful of fixes/clarifications, Vulkan 1.3.293 introduces a new NVIDIA vendor extension.
New to the Vulkan 1.3.293 spec update is NVIDIA's VK_NV_command_buffer_inheritance extension. This new extension allows for game engines and apps to re-use graphics and compute state between command buffers in the execution queue. NVIDIA's Piers Daniell worked on this extension with Daniel Story of Nintendo. The VK_NV_command_buffer_inheritance extension is explained as:
"This extension allows applications to take advantage of the graphics and compute state that remains valid in the queue between executions of submitted command buffers. This works across both primary and secondary command buffers.
The state inherited includes the previously bound pipeline state, previously bound shader objects, previously bound vertex and index buffers, previously bound descriptor sets and push constants, and all previously set dynamic state.
This extension relaxes the requirement that all that state needs to be bound and set after begin command buffer and before the next draw or dispatch.
By not having to set state that has been inherited applications can save both CPU and GPU cycles by not having to set state redundantly, and also have improved flexibility when reusing secondary command buffers."
An interesting addition and we'll see if this command buffer inheritance extension takes on interest from other vendors with their Vulkan drivers.
More details on this routine Vulkan API spec update and all the VK_NV_command_buffer_inheritance documentation via [1]this Vulkan Docs commit .
[1] https://github.com/KhronosGroup/Vulkan-Docs/commit/59dc3a34d2c3a6704cc569a82a2798fae337367c
New to the Vulkan 1.3.293 spec update is NVIDIA's VK_NV_command_buffer_inheritance extension. This new extension allows for game engines and apps to re-use graphics and compute state between command buffers in the execution queue. NVIDIA's Piers Daniell worked on this extension with Daniel Story of Nintendo. The VK_NV_command_buffer_inheritance extension is explained as:
"This extension allows applications to take advantage of the graphics and compute state that remains valid in the queue between executions of submitted command buffers. This works across both primary and secondary command buffers.
The state inherited includes the previously bound pipeline state, previously bound shader objects, previously bound vertex and index buffers, previously bound descriptor sets and push constants, and all previously set dynamic state.
This extension relaxes the requirement that all that state needs to be bound and set after begin command buffer and before the next draw or dispatch.
By not having to set state that has been inherited applications can save both CPU and GPU cycles by not having to set state redundantly, and also have improved flexibility when reusing secondary command buffers."
An interesting addition and we'll see if this command buffer inheritance extension takes on interest from other vendors with their Vulkan drivers.
More details on this routine Vulkan API spec update and all the VK_NV_command_buffer_inheritance documentation via [1]this Vulkan Docs commit .
[1] https://github.com/KhronosGroup/Vulkan-Docs/commit/59dc3a34d2c3a6704cc569a82a2798fae337367c
rene