TensorPrimitives.FusedMultiplyAdd 方法

定义

重载

FusedMultiplyAdd<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, ReadOnlySpan<T>, Span<T>)

计算指定数值张量 (x * y) + addend 的元素结果。

FusedMultiplyAdd<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, T, Span<T>)

计算指定数值张量 (x * y) + addend 的元素结果。

FusedMultiplyAdd<T>(ReadOnlySpan<T>, T, ReadOnlySpan<T>, Span<T>)

计算指定数值张量 (x * y) + addend 的元素结果。

FusedMultiplyAdd<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, ReadOnlySpan<T>, Span<T>)

Source:
TensorPrimitives.FusedMultiplyAdd.cs

计算指定数值张量 (x * y) + addend 的元素结果。

public:
generic <typename T>
 where T : System::Numerics::IFloatingPointIeee754<T> static void FusedMultiplyAdd(ReadOnlySpan<T> x, ReadOnlySpan<T> y, ReadOnlySpan<T> addend, Span<T> destination);
public static void FusedMultiplyAdd<T> (ReadOnlySpan<T> x, ReadOnlySpan<T> y, ReadOnlySpan<T> addend, Span<T> destination) where T : System.Numerics.IFloatingPointIeee754<T>;
static member FusedMultiplyAdd : ReadOnlySpan<'T (requires 'T :> System.Numerics.IFloatingPointIeee754<'T>)> * ReadOnlySpan<'T (requires 'T :> System.Numerics.IFloatingPointIeee754<'T>)> * ReadOnlySpan<'T (requires 'T :> System.Numerics.IFloatingPointIeee754<'T>)> * Span<'T (requires 'T :> System.Numerics.IFloatingPointIeee754<'T>)> -> unit (requires 'T :> System.Numerics.IFloatingPointIeee754<'T>)
Public Shared Sub FusedMultiplyAdd(Of T As IFloatingPointIeee754(Of T)) (x As ReadOnlySpan(Of T), y As ReadOnlySpan(Of T), addend As ReadOnlySpan(Of T), destination As Span(Of T))

类型参数

T

参数

x
ReadOnlySpan<T>

第一个张量,表示为范围。

y
ReadOnlySpan<T>

第二个张量,表示为范围。

addend
ReadOnlySpan<T>

第三个张量,表示为范围。

destination
Span<T>

目标张量,表示为范围。

例外

addenddestination 引用重叠的内存位置,并且不在同一位置开始。

注解

此方法有效地计算 destination[i] = (x[i] * y[i]) + addend[i]

如果任一元素输入值等于 NaN,则生成的元素值也是 NaN。

这计算(x * y)就像是无限精度一样,将 addend 添加到该结果中,就好像是无限精度,最后舍入到最接近的可表示值。 这与计算(x * y)的非融合序列不同,就像是无限精度一样,将结果舍入到最接近的可表示值,将 addend 添加到舍入结果中,就好像是无限精度,最后舍入到最接近的可表示值。

适用于

FusedMultiplyAdd<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, T, Span<T>)

Source:
TensorPrimitives.FusedMultiplyAdd.cs

计算指定数值张量 (x * y) + addend 的元素结果。

public:
generic <typename T>
 where T : System::Numerics::IFloatingPointIeee754<T> static void FusedMultiplyAdd(ReadOnlySpan<T> x, ReadOnlySpan<T> y, T addend, Span<T> destination);
public static void FusedMultiplyAdd<T> (ReadOnlySpan<T> x, ReadOnlySpan<T> y, T addend, Span<T> destination) where T : System.Numerics.IFloatingPointIeee754<T>;
static member FusedMultiplyAdd : ReadOnlySpan<'T (requires 'T :> System.Numerics.IFloatingPointIeee754<'T>)> * ReadOnlySpan<'T (requires 'T :> System.Numerics.IFloatingPointIeee754<'T>)> * 'T * Span<'T (requires 'T :> System.Numerics.IFloatingPointIeee754<'T>)> -> unit (requires 'T :> System.Numerics.IFloatingPointIeee754<'T>)
Public Shared Sub FusedMultiplyAdd(Of T As IFloatingPointIeee754(Of T)) (x As ReadOnlySpan(Of T), y As ReadOnlySpan(Of T), addend As T, destination As Span(Of T))

类型参数

T

参数

x
ReadOnlySpan<T>

第一个张量,表示为范围。

y
ReadOnlySpan<T>

第二个张量,表示为范围。

addend
T

第三个张量,表示为标量。

destination
Span<T>

目标张量,表示为范围。

例外

ydestination 引用重叠的内存位置,并且不在同一位置开始。

注解

此方法有效地计算 destination[i] = (x[i] * y[i]) + addend。 它对应于 BLAS1定义的 axpy 方法。

如果任一元素输入值等于 NaN,则生成的元素值也是 NaN。

这计算(x * y)就像是无限精度一样,将 addend 添加到该结果中,就好像是无限精度,最后舍入到最接近的可表示值。 这与计算(x * y)的非融合序列不同,就像是无限精度一样,将结果舍入到最接近的可表示值,将 addend 添加到舍入结果中,就好像是无限精度,最后舍入到最接近的可表示值。

适用于

FusedMultiplyAdd<T>(ReadOnlySpan<T>, T, ReadOnlySpan<T>, Span<T>)

Source:
TensorPrimitives.FusedMultiplyAdd.cs

计算指定数值张量 (x * y) + addend 的元素结果。

public:
generic <typename T>
 where T : System::Numerics::IFloatingPointIeee754<T> static void FusedMultiplyAdd(ReadOnlySpan<T> x, T y, ReadOnlySpan<T> addend, Span<T> destination);
public static void FusedMultiplyAdd<T> (ReadOnlySpan<T> x, T y, ReadOnlySpan<T> addend, Span<T> destination) where T : System.Numerics.IFloatingPointIeee754<T>;
static member FusedMultiplyAdd : ReadOnlySpan<'T (requires 'T :> System.Numerics.IFloatingPointIeee754<'T>)> * 'T * ReadOnlySpan<'T (requires 'T :> System.Numerics.IFloatingPointIeee754<'T>)> * Span<'T (requires 'T :> System.Numerics.IFloatingPointIeee754<'T>)> -> unit (requires 'T :> System.Numerics.IFloatingPointIeee754<'T>)
Public Shared Sub FusedMultiplyAdd(Of T As IFloatingPointIeee754(Of T)) (x As ReadOnlySpan(Of T), y As T, addend As ReadOnlySpan(Of T), destination As Span(Of T))

类型参数

T

参数

x
ReadOnlySpan<T>

第一个张量,表示为范围。

y
T

第二个张量,表示为标量。

addend
ReadOnlySpan<T>

第三个张量,表示为范围。

destination
Span<T>

目标张量,表示为范围。

例外

addenddestination 引用重叠的内存位置,并且不在同一位置开始。

注解

此方法有效地计算 destination[i] = (x[i] * y) + addend[i]

如果任一元素输入值等于 NaN,则生成的元素值也是 NaN。

这计算(x * y)就像是无限精度一样,将 addend 添加到该结果中,就好像是无限精度,最后舍入到最接近的可表示值。 这与计算(x * y)的非融合序列不同,就像是无限精度一样,将结果舍入到最接近的可表示值,将 addend 添加到舍入结果中,就好像是无限精度,最后舍入到最接近的可表示值。

适用于