multiple accumulators
Splitting a running total into several separate totals added up at the end, so the additions no longer all wait for each other.
Using k independent accumulators splits one loop-carried chain into k interleaved chains, letting up to k additions be in flight; for floating point it reassociates the sum (Chapter 16), so compilers do it only when permitted.
Examples
Summing into four partial sums and adding them at the end lets four additions be in flight at once.
See also