mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-06-15 06:58:20 +02:00
panvk: Advertise VK_KHR_compute_shader_derivatives
Compute derivatives can use the same lane based path as fragment shaders because a workgroup's invocations map to subgroup lanes in order. This gives correct derivative quads on Valhall. Advertise the extension for PAN_ARCH >= 9 with both derivative groups. Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com> Reviewed-by: Jakob Sinclair <jakob.sinclair@arm.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42142>
This commit is contained in:
parent
23c09e89d9
commit
67ded3d079
3 changed files with 10 additions and 1 deletions
|
|
@ -540,7 +540,7 @@ Khronos extensions that are not part of any Vulkan version:
|
|||
|
||||
VK_KHR_acceleration_structure DONE (anv/gfx12.5+, lvp, radv/gfx10.3+, tu/a740+, vn)
|
||||
VK_KHR_calibrated_timestamps DONE (anv, hk, kk, nvk, panvk/v10+, radv, tu/a750+, vn)
|
||||
VK_KHR_compute_shader_derivatives DONE (anv, lvp, nvk, radv, tu, vn)
|
||||
VK_KHR_compute_shader_derivatives DONE (anv, lvp, nvk, panvk/v9+, radv, tu, vn)
|
||||
VK_KHR_cooperative_matrix DONE (anv, lvp, nvk/Turing+, radv/gfx11+, vn)
|
||||
VK_KHR_copy_memory_indirect DONE (anv, lvp, nvk, radv/gfx8+)
|
||||
VK_KHR_deferred_host_operations DONE (anv, hasvk, lvp, radv, tu, vn)
|
||||
|
|
|
|||
|
|
@ -27,3 +27,4 @@ VK_GOOGLE_display_timing for KHR_display on anv, panvk, pvr, radv, tu, v3dv
|
|||
VK_KHR_shader_abort on RADV
|
||||
VK_KHR_shader_fma on panvk
|
||||
VK_NV_shader_atomic_float16_vector on NVK
|
||||
VK_KHR_compute_shader_derivatives on panvk
|
||||
|
|
|
|||
|
|
@ -51,6 +51,7 @@ panvk_per_arch(get_physical_device_extensions)(
|
|||
.KHR_buffer_device_address = true,
|
||||
.KHR_calibrated_timestamps =
|
||||
device->kmod.dev->props.gpu_can_query_timestamp,
|
||||
.KHR_compute_shader_derivatives = PAN_ARCH >= 9,
|
||||
.KHR_copy_commands2 = true,
|
||||
.KHR_create_renderpass2 = true,
|
||||
.KHR_dedicated_allocation = true,
|
||||
|
|
@ -464,6 +465,10 @@ panvk_per_arch(get_physical_device_features)(
|
|||
/* VK_KHR_depth_clamp_zero_one */
|
||||
.depthClampZeroOne = true,
|
||||
|
||||
/* VK_KHR_compute_shader_derivatives */
|
||||
.computeDerivativeGroupQuads = PAN_ARCH >= 9,
|
||||
.computeDerivativeGroupLinear = PAN_ARCH >= 9,
|
||||
|
||||
/* VK_KHR_maintenance7 */
|
||||
.maintenance7 = true,
|
||||
|
||||
|
|
@ -1170,6 +1175,9 @@ panvk_per_arch(get_physical_device_properties)(
|
|||
.pipelineBinaryPrecompiledInternalCache = has_disk_cache,
|
||||
.pipelineBinaryCompressedData = false,
|
||||
|
||||
/* VK_KHR_compute_shader_derivatives */
|
||||
.meshAndTaskShaderDerivatives = false,
|
||||
|
||||
/* VK_KHR_robustness2 */
|
||||
.robustStorageBufferAccessSizeAlignment = 4,
|
||||
.robustUniformBufferAccessSizeAlignment = 16,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue