Condividi tramite


TensorPrimitives.FusedMultiplyAdd Metodo

Definizione

Overload

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

Calcola il risultato dell'elemento di (x * y) + addend per i tensori di numeri specificati.

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

Calcola il risultato dell'elemento di (x * y) + addend per i tensori di numeri specificati.

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

Calcola il risultato dell'elemento di (x * y) + addend per i tensori di numeri specificati.

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

Origine:
TensorPrimitives.FusedMultiplyAdd.cs
Origine:
TensorPrimitives.FusedMultiplyAdd.cs

Calcola il risultato dell'elemento di (x * y) + addend per i tensori di numeri specificati.

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

Parametri di tipo

T

Parametri

x
ReadOnlySpan<T>

Primo tensore, rappresentato come intervallo.

y
ReadOnlySpan<T>

Secondo tensore, rappresentato come intervallo.

addend
ReadOnlySpan<T>

Terzo tensore, rappresentato come intervallo.

destination
Span<T>

Tensore di destinazione, rappresentato come intervallo.

Eccezioni

addend e destination fare riferimento a percorsi di memoria sovrapposti e non iniziano nella stessa posizione.

Commenti

Questo metodo calcola in modo efficace destination[i] = (x[i] * y[i]) + addend[i].

Se uno dei valori di input a livello di elemento è uguale a NaN, anche il valore dell'elemento risultante è NaN.

Questo calcolo (x * y) come se fosse una precisione infinita, aggiunge addend a tale risultato come se fosse una precisione infinita e infine arrotonda al valore rappresentabile più vicino. Ciò differisce dalla sequenza non fusibile che calcola (x * y) come se fosse una precisione infinita, arrotondare il risultato al valore rappresentabile più vicino, aggiungere addend al risultato arrotondato come se fosse una precisione infinita e infine arrotondare al valore rappresentabile più vicino.

Si applica a

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

Origine:
TensorPrimitives.FusedMultiplyAdd.cs
Origine:
TensorPrimitives.FusedMultiplyAdd.cs

Calcola il risultato dell'elemento di (x * y) + addend per i tensori di numeri specificati.

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

Parametri di tipo

T

Parametri

x
ReadOnlySpan<T>

Primo tensore, rappresentato come intervallo.

y
ReadOnlySpan<T>

Secondo tensore, rappresentato come intervallo.

addend
T

Terzo tensore, rappresentato come scalare.

destination
Span<T>

Tensore di destinazione, rappresentato come intervallo.

Eccezioni

y e destination fare riferimento a percorsi di memoria sovrapposti e non iniziano nella stessa posizione.

Commenti

Questo metodo calcola in modo efficace destination[i] = (x[i] * y[i]) + addend. Corrisponde al metodo axpy definito da BLAS1.

Se uno dei valori di input a livello di elemento è uguale a NaN, anche il valore dell'elemento risultante è NaN.

Questo calcolo (x * y) come se fosse una precisione infinita, aggiunge addend a tale risultato come se fosse una precisione infinita e infine arrotonda al valore rappresentabile più vicino. Ciò differisce dalla sequenza non fusibile che calcola (x * y) come se fosse una precisione infinita, arrotondare il risultato al valore rappresentabile più vicino, aggiungere addend al risultato arrotondato come se fosse una precisione infinita e infine arrotondare al valore rappresentabile più vicino.

Si applica a

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

Origine:
TensorPrimitives.FusedMultiplyAdd.cs
Origine:
TensorPrimitives.FusedMultiplyAdd.cs

Calcola il risultato dell'elemento di (x * y) + addend per i tensori di numeri specificati.

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

Parametri di tipo

T

Parametri

x
ReadOnlySpan<T>

Primo tensore, rappresentato come intervallo.

y
T

Secondo tensore, rappresentato come scalare.

addend
ReadOnlySpan<T>

Terzo tensore, rappresentato come intervallo.

destination
Span<T>

Tensore di destinazione, rappresentato come intervallo.

Eccezioni

addend e destination fare riferimento a percorsi di memoria sovrapposti e non iniziano nella stessa posizione.

Commenti

Questo metodo calcola in modo efficace destination[i] = (x[i] * y) + addend[i].

Se uno dei valori di input a livello di elemento è uguale a NaN, anche il valore dell'elemento risultante è NaN.

Questo calcolo (x * y) come se fosse una precisione infinita, aggiunge addend a tale risultato come se fosse una precisione infinita e infine arrotonda al valore rappresentabile più vicino. Ciò differisce dalla sequenza non fusibile che calcola (x * y) come se fosse una precisione infinita, arrotondare il risultato al valore rappresentabile più vicino, aggiungere addend al risultato arrotondato come se fosse una precisione infinita e infine arrotondare al valore rappresentabile più vicino.

Si applica a