RWByteAddressBuffer.InterlockedAddF32
Description
Perform a 32-bit floating point atomic add operation at byteAddress.
Signature
void RWByteAddressBuffer.InterlockedAddF32( uint byteAddress, float valueToAdd, out float originalValue); void RWByteAddressBuffer.InterlockedAddF32( uint byteAddress, float valueToAdd);
Parameters
byteAddress : uint
The address at which to perform the atomic add operation.
valueToAdd : float
The value to add to the value at byteAddress.
originalValue : float
The original value at byteAddress before the add operation.
Remarks
For SPIR-V, this function maps to OpAtomicFAdd. For HLSL, this function translates to an NVAPI call due to lack of native HLSL intrinsic for floating point atomic add. For CUDA, this function maps to atomicAdd.
Availability and Requirements
Defined for the following targets:
hlsl
Available in all stages.
Requires capability: hlsl_nvapi
.
glsl
Available in all stages.
cuda
Available in all stages.
metal
Available in all stages.
spirv
Available in all stages.
Requires capabilities: spvAtomicFloat32AddEXT
, spvAtomicFloat32MinMaxEXT
.