다음을 통해 공유


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
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 그 결과에 무한 정밀도처럼 추가하고, 마지막으로 가장 가까운 표현 가능한 값으로 반올림합니다. 이는 마치 정밀도를 무한정밀도로 계산하고, 결과를 가장 가까운 표현 가능한 값으로 반올림하고, 전체 자릿수가 무한인 것처럼 반올림된 결과에 addend 추가하고, 마지막으로 가장 가까운 표현 가능한 값으로 반올림하는 것처럼(x * y) 계산하는 비 융합 시퀀스와 다릅니다.

적용 대상

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

Source:
TensorPrimitives.FusedMultiplyAdd.cs
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 그 결과에 무한 정밀도처럼 추가하고, 마지막으로 가장 가까운 표현 가능한 값으로 반올림합니다. 이는 마치 정밀도를 무한정밀도로 계산하고, 결과를 가장 가까운 표현 가능한 값으로 반올림하고, 전체 자릿수가 무한인 것처럼 반올림된 결과에 addend 추가하고, 마지막으로 가장 가까운 표현 가능한 값으로 반올림하는 것처럼(x * y) 계산하는 비 융합 시퀀스와 다릅니다.

적용 대상

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

Source:
TensorPrimitives.FusedMultiplyAdd.cs
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 그 결과에 무한 정밀도처럼 추가하고, 마지막으로 가장 가까운 표현 가능한 값으로 반올림합니다. 이는 마치 정밀도를 무한정밀도로 계산하고, 결과를 가장 가까운 표현 가능한 값으로 반올림하고, 전체 자릿수가 무한인 것처럼 반올림된 결과에 addend 추가하고, 마지막으로 가장 가까운 표현 가능한 값으로 반올림하는 것처럼(x * y) 계산하는 비 융합 시퀀스와 다릅니다.

적용 대상