Structures
VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT
Structure describing features supported by VK_EXT_shader_atomic_float2
The VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT structure is defined as:
typedef struct VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT {
VkStructureType sType;
void* pNext;
VkBool32 shaderBufferFloat16Atomics;
VkBool32 shaderBufferFloat16AtomicAdd;
VkBool32 shaderBufferFloat16AtomicMinMax;
VkBool32 shaderBufferFloat32AtomicMinMax;
VkBool32 shaderBufferFloat64AtomicMinMax;
VkBool32 shaderSharedFloat16Atomics;
VkBool32 shaderSharedFloat16AtomicAdd;
VkBool32 shaderSharedFloat16AtomicMinMax;
VkBool32 shaderSharedFloat32AtomicMinMax;
VkBool32 shaderSharedFloat64AtomicMinMax;
VkBool32 shaderImageFloat32AtomicMinMax;
VkBool32 sparseImageFloat32AtomicMinMax;
} VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT;
This structure describes the following features:
sType
is a VkStructureType value identifying this structure.pNext
isNULL
or a pointer to a structure extending this structure.-
shaderBufferFloat16Atomics
indicates whether shaders can perform 16-bit floating-point load, store, and exchange atomic operations on storage buffers. shaderBufferFloat16AtomicAdd
indicates whether shaders can perform 16-bit floating-point add atomic operations on storage buffers.shaderBufferFloat16AtomicMinMax
indicates whether shaders can perform 16-bit floating-point min and max atomic operations on storage buffers.shaderBufferFloat32AtomicMinMax
indicates whether shaders can perform 32-bit floating-point min and max atomic operations on storage buffers.shaderBufferFloat64AtomicMinMax
indicates whether shaders can perform 64-bit floating-point min and max atomic operations on storage buffers.-
shaderSharedFloat16Atomics
indicates whether shaders can perform 16-bit floating-point load, store and exchange atomic operations on shared and payload memory. shaderSharedFloat16AtomicAdd
indicates whether shaders can perform 16-bit floating-point add atomic operations on shared and payload memory.shaderSharedFloat16AtomicMinMax
indicates whether shaders can perform 16-bit floating-point min and max atomic operations on shared and payload memory.shaderSharedFloat32AtomicMinMax
indicates whether shaders can perform 32-bit floating-point min and max atomic operations on shared and payload memory.shaderSharedFloat64AtomicMinMax
indicates whether shaders can perform 64-bit floating-point min and max atomic operations on shared and payload memory.shaderImageFloat32AtomicMinMax
indicates whether shaders can perform 32-bit floating-point min and max atomic image operations.sparseImageFloat32AtomicMinMax
indicates whether 32-bit floating-point min and max atomic operations can be used on sparse images.
If the VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT
structure is included in the pNext
chain of the
VkPhysicalDeviceFeatures2 structure passed to
vkGetPhysicalDeviceFeatures2, it is filled in to indicate whether each
corresponding feature is supported.
VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT
can also be used in the pNext
chain of
VkDeviceCreateInfo to selectively enable these features.
Valid Usage (Implicit)
VUID-VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT-sType-sType
sType
must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT