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
ソース:
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>

スパンとして表される 2 番目のテンソル。

addend
ReadOnlySpan<T>

スパンとして表される 3 番目のテンソル。

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
ソース:
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>

スパンとして表される 2 番目のテンソル。

addend
T

スカラーとして表される 3 番目のテンソル。

destination
Span<T>

スパンとして表される宛先テンソル。

例外

ydestination 重複するメモリ位置を参照し、同じ場所から開始しないでください。

注釈

このメソッドは、 destination[i] = (x[i] * y[i]) + addendを効果的に計算します。 これは、axpyによって定義されたBLAS1メソッドに対応します。

要素ごとの入力値のいずれかが NaNと等しい場合、結果の要素ごとの値も NaN になります。

これにより、無限精度のように (x * y) 計算され、無限精度のように結果に addend が追加され、最後に最も近い表現可能な値に丸められます。 これは、無限精度のように計算 (x * y) する非融合シーケンスとは異なり、結果を最も近い表現可能な値に丸め、無限精度のように丸められた結果に addend を追加し、最後に最も近い表現可能な値に丸めます。

適用対象

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

ソース:
TensorPrimitives.FusedMultiplyAdd.cs
ソース:
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

スカラーとして表される 2 番目のテンソル。

addend
ReadOnlySpan<T>

スパンとして表される 3 番目のテンソル。

destination
Span<T>

スパンとして表される宛先テンソル。

例外

addenddestination 重複するメモリ位置を参照し、同じ場所から開始しないでください。

注釈

このメソッドは、 destination[i] = (x[i] * y) + addend[i]を効果的に計算します。

要素ごとの入力値のいずれかが NaNと等しい場合、結果の要素ごとの値も NaN になります。

これにより、無限精度のように (x * y) 計算され、無限精度のように結果に addend が追加され、最後に最も近い表現可能な値に丸められます。 これは、無限精度のように計算 (x * y) する非融合シーケンスとは異なり、結果を最も近い表現可能な値に丸め、無限精度のように丸められた結果に addend を追加し、最後に最も近い表現可能な値に丸めます。

適用対象