| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Vulkan.Extensions.VK_KHR_compute_shader_derivatives
Description
Name
VK_KHR_compute_shader_derivatives - device extension
VK_KHR_compute_shader_derivatives
- Name String
VK_KHR_compute_shader_derivatives
- Extension Type
- Device extension
- Registered Extension Number
- 512
- Revision
- 1
- Ratification Status
- Ratified
- Extension and Version Dependencies
- VK_KHR_get_physical_device_properties2 or Vulkan Version 1.1
- SPIR-V Dependencies
- Contact
- Extension Proposal
- VK_KHR_compute_shader_derivatives
Other Extension Metadata
- Last Modified Date
- 2024-06-26
- IP Status
- No known IP claims.
- Interactions and External Dependencies
- This extension requires SPV_KHR_compute_shader_derivatives
- This extension provides API support for GL_KHR_compute_shader_derivatives
- Contributors
- Jean-Noe Morissette, Epic Games
- Daniel Koch, NVIDIA
- Pat Brown, NVIDIA
- Stu Smith, AMD
- Jan-Harald Fredriksen, Arm
- Tobias Hector, AMD
- Ralph Potter, Samsung
- Pan Gao, Huawei
- Samuel (Sheng-Wen) Huang, MediaTek
- Graeme Leese, Broadcom
- Hans-Kristian Arntzen, Valve
- Matthew Netsch, Qualcomm
Description
This extension adds Vulkan support for the SPV_KHR_compute_shader_derivatives SPIR-V extension.
The SPIR-V extension provides two new execution modes, both of which
allow execution models with defined workgroups to use built-ins that
evaluate derivatives explicitly or implicitly. Derivatives will be
computed via differencing over a 2x2 group of shader invocations. The
DerivativeGroupQuadsKHR execution mode assembles shader invocations
into 2x2 groups, where each group has x and y coordinates of the local
invocation ID of the form (2m+{0,1}, 2n+{0,1}). The
DerivativeGroupLinearKHR execution mode assembles shader invocations
into 2x2 groups, where each group has local invocation index values of
the form 4m+{0,1,2,3}.
The new execution modes are supported in compute shaders and optionally (see meshAndTaskShaderDerivatives) in mesh and task shaders.
New Structures
Extending
PhysicalDeviceFeatures2,DeviceCreateInfo:
New Enum Constants
New SPIR-V Capability
Examples
None.
Version History
Revision 1, 2023-02-27 (Jean-Noe Morissette)
- Initial draft
- Add properties and clarify mesh and task support (Daniel Koch)
See Also
No cross-references are available
Document Notes
For more information, see the Vulkan Specification.
This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.
Synopsis
- data PhysicalDeviceComputeShaderDerivativesFeaturesKHR = PhysicalDeviceComputeShaderDerivativesFeaturesKHR {}
- data PhysicalDeviceComputeShaderDerivativesPropertiesKHR = PhysicalDeviceComputeShaderDerivativesPropertiesKHR {}
- type KHR_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION = 1
- pattern KHR_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION :: Integral a => a
- type KHR_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME = "VK_KHR_compute_shader_derivatives"
- pattern KHR_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME :: (Eq a, IsString a) => a
Documentation
data PhysicalDeviceComputeShaderDerivativesFeaturesKHR Source #
VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR - Structure describing compute shader derivative features that can be supported by an implementation
Members
This structure describes the following features:
Description
See Quad shader scope for more information.
If the PhysicalDeviceComputeShaderDerivativesFeaturesKHR. structure is
included in the pNext chain of the
PhysicalDeviceFeatures2
structure passed to
getPhysicalDeviceFeatures2,
it is filled in to indicate whether each corresponding feature is
supported. If the application wishes to use a
Device with any features described by
PhysicalDeviceComputeShaderDerivativesFeaturesKHR., it must add an
instance of the structure, with the desired feature members set to
TRUE, to the pNext chain of
DeviceCreateInfo when creating the
Device.
Valid Usage (Implicit)
See Also
VK_KHR_compute_shader_derivatives,
VK_NV_compute_shader_derivatives,
Bool32,
StructureType
Constructors
| PhysicalDeviceComputeShaderDerivativesFeaturesKHR | |
Fields | |
Instances
data PhysicalDeviceComputeShaderDerivativesPropertiesKHR Source #
VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR - Structure describing compute shader derivative operations supported by an implementation
Members
The members of the PhysicalDeviceComputeShaderDerivativesPropertiesKHR
structure describe the following:
Description
If the PhysicalDeviceComputeShaderDerivativesPropertiesKHR structure
is included in the pNext chain of the
PhysicalDeviceProperties2
structure passed to
getPhysicalDeviceProperties2,
it is filled in with each corresponding implementation-dependent
property.
Valid Usage (Implicit)
See Also
Constructors
| PhysicalDeviceComputeShaderDerivativesPropertiesKHR | |
Fields | |
Instances
pattern KHR_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION :: Integral a => a Source #
type KHR_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME = "VK_KHR_compute_shader_derivatives" Source #
pattern KHR_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME :: (Eq a, IsString a) => a Source #