共用方式為


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>)

來源:
TensorPrimitives.FusedMultiplyAdd.cs
來源:
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>)

來源:
TensorPrimitives.FusedMultiplyAdd.cs
來源:
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>)

來源:
TensorPrimitives.FusedMultiplyAdd.cs
來源:
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 加入捨入結果,就好像是無限精確度,最後四捨五入為最接近的可表示值。

適用於