Turbo-Softmax

面向资源受限 CPU 与 MCU 的高精度快速 Softmax C 内核实现。

Turbo-Softmax 是一个用 C 实现的高精度、极致快速 Softmax。它面向 MCU/嵌入式场景:在缺少 SIMD/FPU 或无法容忍大 LUT 内存开销时,通过可移植的数值近似实现显著提速。

亮点

  • 通过 IEEE-754 位级构造实现 2^i(Range Reduction)
  • 使用 5 阶多项式近似 exp(t)
  • 相比常见 math.h 实现实现 4.0×–4.2× speedup(维度 16–1024)
  • 数值稳定:最大误差 < 1e-6,KL 散度可忽略

编译运行(GCC/MinGW)

gcc -O3 -std=c11 -Wall -Wextra -pedantic example.c qsoftmax.c -lm -o example.exe
./example.exe