C Specification
The VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT structure is defined as:
// Provided by VK_EXT_shader_atomic_float2
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;
Members
This structure describes the following features:
-
sTypeis a VkStructureType value identifying this structure. -
pNextisNULLor a pointer to a structure extending this structure.
Description
-
shaderBufferFloat16Atomicsindicates whether shaders can perform 16-bit floating-point load, store, and exchange atomic operations on storage buffers. -
shaderBufferFloat16AtomicAddindicates whether shaders can perform 16-bit floating-point add atomic operations on storage buffers. -
shaderBufferFloat16AtomicMinMaxindicates whether shaders can perform 16-bit floating-point min and max atomic operations on storage buffers. -
shaderBufferFloat32AtomicMinMaxindicates whether shaders can perform 32-bit floating-point min and max atomic operations on storage buffers. -
shaderBufferFloat64AtomicMinMaxindicates whether shaders can perform 64-bit floating-point min and max atomic operations on storage buffers. -
shaderSharedFloat16Atomicsindicates whether shaders can perform 16-bit floating-point load, store and exchange atomic operations on shared and payload memory. -
shaderSharedFloat16AtomicAddindicates whether shaders can perform 16-bit floating-point add atomic operations on shared and payload memory. -
shaderSharedFloat16AtomicMinMaxindicates whether shaders can perform 16-bit floating-point min and max atomic operations on shared and payload memory. -
shaderSharedFloat32AtomicMinMaxindicates whether shaders can perform 32-bit floating-point min and max atomic operations on shared and payload memory. -
shaderSharedFloat64AtomicMinMaxindicates whether shaders can perform 64-bit floating-point min and max atomic operations on shared and payload memory. -
shaderImageFloat32AtomicMinMaxindicates whether shaders can perform 32-bit floating-point min and max atomic image operations. -
sparseImageFloat32AtomicMinMaxindicates 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.
If the application wishes to use a VkDevice with any features
described by VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT, it must add an instance of the structure,
with the desired feature members set to VK_TRUE, to the pNext
chain of VkDeviceCreateInfo when creating the VkDevice.
Document Notes
For more information, see the Vulkan Specification
This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.