| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Vulkan.Extensions.VK_NV_compute_shader_derivatives
Description
Name
VK_NV_compute_shader_derivatives - device extension
VK_NV_compute_shader_derivatives
- Name String
VK_NV_compute_shader_derivatives
- Extension Type
- Device extension
- Registered Extension Number
- 202
- Revision
- 1
- Ratification Status
- Not ratified
- Extension and Version Dependencies
- VK_KHR_get_physical_device_properties2 or Vulkan Version 1.1
- SPIR-V Dependencies
- Deprecation State
- Promoted to VK_KHR_compute_shader_derivatives extension
- Contact
Other Extension Metadata
- Last Modified Date
- 2018-07-19
- IP Status
- No known IP claims.
- Interactions and External Dependencies
- This extension provides API support for GL_NV_compute_shader_derivatives
- Contributors
- Pat Brown, NVIDIA
Description
This extension adds Vulkan support for the SPV_NV_compute_shader_derivatives SPIR-V extension.
The SPIR-V extension provides two new execution modes, both of which
allow compute shaders to use built-ins that evaluate compute derivatives
explicitly or implicitly. Derivatives will be computed via differencing
over a 2x2 group of shader invocations. The DerivativeGroupQuadsNV
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 DerivativeGroupLinearNV execution mode
assembles shader invocations into 2x2 groups, where each group has local
invocation index values of the form 4m+{0,1,2,3}.
New Structures
Extending
PhysicalDeviceFeatures2,DeviceCreateInfo:
New Enum Constants
New SPIR-V Capability
Issues
- Should we specify that the groups of four shader invocations used for derivatives in a compute shader are the same groups of four invocations that form a “quad” in shader subgroups?
RESOLVED: Yes.
Examples
None.
Version History
Revision 1, 2018-07-19 (Pat Brown)
- Initial draft
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
- pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType
- type PhysicalDeviceComputeShaderDerivativesFeaturesNV = PhysicalDeviceComputeShaderDerivativesFeaturesKHR
- type NV_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION = 1
- pattern NV_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION :: Integral a => a
- type NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME = "VK_NV_compute_shader_derivatives"
- pattern NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME :: (Eq a, IsString a) => a
- data PhysicalDeviceComputeShaderDerivativesFeaturesKHR = PhysicalDeviceComputeShaderDerivativesFeaturesKHR {}
Documentation
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: StructureType Source #
type PhysicalDeviceComputeShaderDerivativesFeaturesNV = PhysicalDeviceComputeShaderDerivativesFeaturesKHR Source #
pattern NV_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION :: Integral a => a Source #
type NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME = "VK_NV_compute_shader_derivatives" Source #
pattern NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME :: (Eq a, IsString a) => a Source #
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 | |