Error bounds for mixed-precision accumulation #
Real-error decompositions and absolute bounds for mulAcc and dotSequential. Each step's bound
accounts for both input casts, multiplication, the cast to the accumulator, and addition. The dot
bound also includes the final output cast. The bounds assume IEEE encodings and finite values
throughout; their local half-ULP terms cover subnormals as well as normal values.
All values encountered by one unfused mixed-precision multiply-accumulate are finite.
Instances For
Sum of the local half-ULP budgets in one mixed-precision multiply-accumulate.
The input-cast terms include the factors introduced when the rounded operands are multiplied.
Instances For
Real error introduced by one mixed-precision multiply-accumulate step.
Instances For
The error of one mixed-precision multiply-accumulate is exactly the sum of its five site residuals.
This algebraic identity needs no finiteness hypotheses. To interpret the residuals as rounding
errors, use the finiteness premises of mulAcc_abs_error_le_budget: toReal maps exceptional
values to zero and does not describe their NaN or infinity behavior.
One finite mixed-precision multiply-accumulate differs from the exact source-value operation by at most the sum of the local cast, multiply, cast, and add budgets.
Accumulator state after the first count sequential product-add sites.
Instances For
Exact real dot product of the first count source-value pairs.
Instances For
Sum of the local error budgets along the actual sequential accumulator path.
Instances For
The executable accumulator's error is the sum of its local errors, evaluated at the successive accumulator states.
The absolute error of a finite sequential accumulator is bounded by the sum of its local budgets. Finiteness is required along the executed prefix states; storage, product, and accumulator may use different IEEE formats.
The executable dot loop is the prefix accumulator followed by its one output cast.
A successful finite mixed-precision dot product is bounded by all per-step budgets plus the final
accumulator-to-output cast budget, following the reduction order of dotSequential.