X compilebench: Add type annotations to pystone_pyx.pyx
This brings in ~8x speedup with tcc and ~14x speedup for gccO2 compared to what we already had for pystone.py already compiled by Cython. However Cython compilation time is 1.7x slower and compilation time for gcc* also raises significantly. For tcc it is "only" 30% more for compilation, but still the total tcc compilation time is very very small. name old time/op new time/op delta pycompile+pyimport 13.0ms ± 0% 13.0ms ± 0% ~ (all equal) pyimport 12.0ms ± 0% 12.0ms ± 0% ~ (all equal) cython/py 980ms ± 1% 982ms ± 1% ~ (p=0.666 n=10+10) cython/pyx 983ms ± 1% 1692ms ± 1% +72.13% (p=0.000 n=9+10) gcc/compile+link/py 603ms ± 0% 603ms ± 0% ~ (p=0.766 n=8+10) gcc/compile+linkO2/py 2.15s ± 0% 2.15s ± 0% ~ (p=0.749 n=10+10) gcc/compile+link/pyx 603ms ± 0% 1106ms ± 0% +83.57% (p=0.000 n=9+10) gcc/compile+linkO2/pyx 2.15s ± 0% 3.65s ± 0% +69.87% (p=0.000 n=10+10) tcc/compile+link/py 36.5ms ± 1% 36.0ms ± 0% -1.37% (p=0.022 n=10+9) tcc/compile+link/pyx 36.7ms ± 2% 47.5ms ± 3% +29.43% (p=0.000 n=10+10) name old pystone/s new pystone/s delta pystone/py 227k ± 2% 228k ± 1% ~ (p=0.182 n=10+9) pystone/py/gcc 220k ± 3% 221k ± 4% ~ (p=0.796 n=10+10) pystone/py/gccO2 433k ± 2% 431k ± 5% ~ (p=1.000 n=10+10) pystone/pyx/gcc 221k ± 1% 1855k ± 1% +737.67% (p=0.000 n=9+8) pystone/pyx/gccO2 435k ± 1% 6239k ± 2% +1335.52% (p=0.000 n=10+10) pystone/py/tcc 219k ± 2% 219k ± 0% ~ (p=0.315 n=10+10) pystone/pyx/tcc 222k ± 2% 1826k ± 0% +723.78% (p=0.000 n=9+9)
Showing
t/compilebench/y.txt
0 → 100644