mirror of
https://github.com/storytold/effectcraft.git
synced 2026-11-01 08:11:40 +00:00
The decimator computed each output as one sequential f32 dot product over 167 taps, which is bound by the 4-cycle latency of the float addition. Use eight independent partial sums (combined pairwise) so the compiler can vectorise the loop. This changes the input of the SILK encoder at rounding level, so the bitstream differs from before; decoded quality and size are unchanged to within noise (see the PR for SNR, segmental SNR and size at several bitrates). A test checks the dot product against an f64 reference. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>