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