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.