Op Englesch liesen Editéieren

Deelen iwwer


Vector64.FusedMultiplyAdd Method

Definition

Overloads

FusedMultiplyAdd(Vector64<Double>, Vector64<Double>, Vector64<Double>)

Computes (left * right) + addend, rounded as one ternary operation.

FusedMultiplyAdd(Vector64<Single>, Vector64<Single>, Vector64<Single>)

Computes (left * right) + addend, rounded as one ternary operation.

FusedMultiplyAdd(Vector64<Double>, Vector64<Double>, Vector64<Double>)

Computes (left * right) + addend, rounded as one ternary operation.

C#
public static System.Runtime.Intrinsics.Vector64<double> FusedMultiplyAdd(System.Runtime.Intrinsics.Vector64<double> left, System.Runtime.Intrinsics.Vector64<double> right, System.Runtime.Intrinsics.Vector64<double> addend);

Parameters

left
Vector64<Double>

The vector to be multiplied with right.

right
Vector64<Double>

The vector to be multiplied with left.

addend
Vector64<Double>

The vector to be added to the result of left multiplied by right.

Returns

(left * right) + addend, rounded as one ternary operation.

Remarks

This computes (left * right) as if to infinite precision, adds addend to that result as if to infinite precision, and finally rounds to the nearest representable value.

This differs from the non-fused sequence which would compute (left * right) as if to infinite precision, round the result to the nearest representable value, add addend to the rounded result as if to infinite precision, and finally round to the nearest representable value.

Applies to

.NET 10 a .NET 9
Produkt Versiounen
.NET 9, 10

FusedMultiplyAdd(Vector64<Single>, Vector64<Single>, Vector64<Single>)

Computes (left * right) + addend, rounded as one ternary operation.

C#
public static System.Runtime.Intrinsics.Vector64<float> FusedMultiplyAdd(System.Runtime.Intrinsics.Vector64<float> left, System.Runtime.Intrinsics.Vector64<float> right, System.Runtime.Intrinsics.Vector64<float> addend);

Parameters

left
Vector64<Single>

The vector to be multiplied with right.

right
Vector64<Single>

The vector to be multiplied with left.

addend
Vector64<Single>

The vector to be added to the result of left multiplied by right.

Returns

(left * right) + addend, rounded as one ternary operation.

Remarks

This computes (left * right) as if to infinite precision, adds addend to that result as if to infinite precision, and finally rounds to the nearest representable value.

This differs from the non-fused sequence which would compute (left * right) as if to infinite precision, round the result to the nearest representable value, add addend to the rounded result as if to infinite precision, and finally round to the nearest representable value.

Applies to

.NET 10 a .NET 9
Produkt Versiounen
.NET 9, 10