Implementation notes: x86, h3neo, crypto_stream

Computer: h3neo
Microarchitecture: amd64; K10 45nm (100f63)
Architecture: x86
CPU ID: AuthenticAMD-00100f63-078bfbff
CPU cycles/second: 1700000000...1700000000 (x86cpuinfo)
SUPERCOP version: 20170105
Benchmark dates: 20161009...20170107

crypto_stream

TimeRelative timePrimitiveImplementationCompiler
193971.00aes128estreame/schwabe/pentium4-1gcc -m32 -march=prescott -O -fomit-frame-pointer
232481.20aes128estreame/bernstein/x86-mmx-1gcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer
234161.21aes128estreame/hongjun/v1gcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer
242161.25aes128estreame/hongjun/v0gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
290061.50aes128estreame/gladmangcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer
307821.59aes128estreame/bernstein/little-4gcc -m32 -O2 -fomit-frame-pointer
315501.63aes128estreame/bernstein/little-3gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
338661.75aes128estreame/bernstein/little-1gcc -m32 -march=k8 -O3 -fomit-frame-pointer
348601.80aes128estreame/bernstein/big-1gcc -m32 -O3 -fomit-frame-pointer
355991.84aes128estreame/bernstein/little-2gcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer
aes256ctropensslgcc -m32 -O3 -fomit-frame-pointer
328421.00aes256estreame/hongjun/v1gcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer (5.4.0 20160609)
340951.04aes256estreame/hongjun/v0gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
387301.18aes256estreame/gladmangcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer
103801.00chacha12e/x86-1gcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer (5.4.0 20160609)
105731.02chacha12e/mergedgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer
111141.07chacha12e/refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer
117731.13chacha12e/regsgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer
128211.24chacha12e/x86-mmxgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer
132211.27chacha12krovetz/vec128gcc -m32 -march=pentium-m -O3 -fomit-frame-pointer
chacha12amd64-ssse3gcc -m32 -O3 -fomit-frame-pointer
chacha12dolbeau/mipsel-msagcc -m32 -O3 -fomit-frame-pointer
chacha12dolbeau/ppc-altivecgcc -m32 -O3 -fomit-frame-pointer
chacha12e/x86-xmmgcc -m32 -O3 -fomit-frame-pointer
chacha12e/x86-xmm2gcc -m32 -O3 -fomit-frame-pointer
chacha12e/x86-xmm5gcc -m32 -O3 -fomit-frame-pointer
chacha12e/x86-xmm6gcc -m32 -O3 -fomit-frame-pointer
chacha12goll_guerongcc -m32 -O3 -fomit-frame-pointer
chacha12krovetz/avx2gcc -m32 -O3 -fomit-frame-pointer
chacha12moon/avx/32gcc -m32 -O3 -fomit-frame-pointer
chacha12moon/avx2/32gcc -m32 -O3 -fomit-frame-pointer
chacha12moon/xop/32gcc -m32 -O3 -fomit-frame-pointer
156761.00chacha20e/mergedgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer (5.4.0 20160609)
162641.04chacha20e/regsgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer
163471.04chacha20e/x86-1gcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer
168931.08chacha20e/refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer
202131.29chacha20e/x86-mmxgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer
215371.37chacha20krovetz/vec128gcc -m32 -march=pentium-m -O3 -fomit-frame-pointer
chacha20amd64-ssse3gcc -m32 -O3 -fomit-frame-pointer
chacha20dolbeau/mipsel-msagcc -m32 -O3 -fomit-frame-pointer
chacha20dolbeau/ppc-altivecgcc -m32 -O3 -fomit-frame-pointer
chacha20e/x86-xmmgcc -m32 -O3 -fomit-frame-pointer
chacha20e/x86-xmm2gcc -m32 -O3 -fomit-frame-pointer
chacha20e/x86-xmm5gcc -m32 -O3 -fomit-frame-pointer
chacha20e/x86-xmm6gcc -m32 -O3 -fomit-frame-pointer
chacha20goll_guerongcc -m32 -O3 -fomit-frame-pointer
chacha20krovetz/avx2gcc -m32 -O3 -fomit-frame-pointer
chacha20moon/avx/32gcc -m32 -O3 -fomit-frame-pointer
chacha20moon/avx2/32gcc -m32 -O3 -fomit-frame-pointer
chacha20moon/xop/32gcc -m32 -O3 -fomit-frame-pointer
74041.00chacha8e/x86-1gcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer (5.4.0 20160609)
82061.11chacha8e/refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer
82711.12chacha8e/mergedgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer
85321.15chacha8e/regsgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer
91001.23chacha8krovetz/vec128gcc -m32 -march=pentium-m -O3 -fomit-frame-pointer
91241.23chacha8e/x86-mmxgcc -m32 -march=k8 -O -fomit-frame-pointer
chacha8amd64-ssse3gcc -m32 -O3 -fomit-frame-pointer
chacha8dolbeau/mipsel-msagcc -m32 -O3 -fomit-frame-pointer
chacha8dolbeau/ppc-altivecgcc -m32 -O3 -fomit-frame-pointer
chacha8e/x86-xmmgcc -m32 -O3 -fomit-frame-pointer
chacha8e/x86-xmm2gcc -m32 -O3 -fomit-frame-pointer
chacha8e/x86-xmm5gcc -m32 -O3 -fomit-frame-pointer
chacha8e/x86-xmm6gcc -m32 -O3 -fomit-frame-pointer
chacha8goll_guerongcc -m32 -O3 -fomit-frame-pointer
chacha8krovetz/avx2gcc -m32 -O3 -fomit-frame-pointer
chacha8moon/avx/32gcc -m32 -O3 -fomit-frame-pointer
chacha8moon/avx2/32gcc -m32 -O3 -fomit-frame-pointer
chacha8moon/xop/32gcc -m32 -O3 -fomit-frame-pointer
120311.00cryptmtv3e/v3gcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer (5.4.0 20160609)
dragone/submissions/dragongcc -m32 -O3 -fomit-frame-pointer
235141.00hc128e/hc-128/200701bgcc -funroll-loops -m32 -O3 -fomit-frame-pointer (5.4.0 20160609)
235761.00hc128e/hc-128/200606gcc -funroll-loops -m32 -O3 -fomit-frame-pointer (5.4.0 20160609)
239841.02hc128e/hc-128/200701agcc -funroll-loops -m32 -O3 -fomit-frame-pointer (5.4.0 20160609)
578831.00hc256e/hc-256/200511gcc -m32 -march=k6 -O3 -fomit-frame-pointer (5.4.0 20160609)
578921.00hc256e/hc-256/200701gcc -m32 -march=k6 -O3 -fomit-frame-pointer (5.4.0 20160609)
121571.00lexv2e/v2/refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer (5.4.0 20160609)
77351.00nlsv2e/v2/sync/2gcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer (5.4.0 20160609)
186712.41nlsv2e/v2/sync/1gcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer
55421.00rabbite/opt/2/5gcc -m32 -march=pentium -Os -fomit-frame-pointer (5.4.0 20160609)
69681.26rabbite/opt/1/3gcc -m32 -march=k6 -O2 -fomit-frame-pointer
70651.27rabbite/opt/2/3gcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer
71551.29rabbite/opt/1/4gcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer
72241.30rabbite/opt/2/4gcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer
79611.44rabbite/opt/1/2gcc -m32 -march=k6-2 -O2 -fomit-frame-pointer
80551.45rabbite/opt/2/2gcc -m32 -march=k6-2 -O2 -fomit-frame-pointer
121112.19rabbite/opt/2/1gcc -m32 -march=k6-3 -O2 -fomit-frame-pointer
121362.19rabbite/opt/1/1gcc -m32 -march=k6-3 -O2 -fomit-frame-pointer
125272.26rabbite/refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer
143521.00salsa20x86_xmm5gcc -funroll-loops -m32 -O3 -fomit-frame-pointer
151561.06salsa20e/x86-1gcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer
155211.08salsa20e/x86-pmgcc -m32 -march=k8 -Os -fomit-frame-pointer
156641.09salsa20e/x86-3gcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer
156661.09salsa20e/x86-2gcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer
158661.11salsa20e/x86-athlongcc -funroll-loops -m32 -O -fomit-frame-pointer
175441.22salsa20e/mergedgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer
176921.23salsa20e/x86-mmxgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer
178541.24salsa20e/regsgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer
185231.29salsa20e/refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer
190741.33salsa20refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer
salsa20e/x86-xmmgcc -m32 -O3 -fomit-frame-pointer
salsa20e/x86-xmm2gcc -m32 -O3 -fomit-frame-pointer
salsa20e/x86-xmm4gcc -m32 -O3 -fomit-frame-pointer
salsa20e/x86-xmm5gcc -m32 -O3 -fomit-frame-pointer
92161.00salsa2012x86_xmm5gcc -m32 -march=barcelona -O3 -fomit-frame-pointer
97331.06salsa2012e/x86-1gcc -m32 -march=k8 -Os -fomit-frame-pointer
100491.09salsa2012e/x86-pmgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer
103271.12salsa2012e/x86-3gcc -m32 -march=athlon -Os -fomit-frame-pointer
103291.12salsa2012e/x86-2gcc -m32 -march=pentium3 -O3 -fomit-frame-pointer
103461.12salsa2012e/x86-athlongcc -m32 -march=pentium4 -Os -fomit-frame-pointer
114051.24salsa2012e/x86-mmxgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer
115481.25salsa2012e/regsgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer
116131.26salsa2012e/refgcc -m32 -march=i486 -O3 -fomit-frame-pointer
116771.27salsa2012e/mergedgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer
132491.44salsa2012refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer
salsa2012e/x86-xmmgcc -m32 -O3 -fomit-frame-pointer
salsa2012e/x86-xmm2gcc -m32 -O3 -fomit-frame-pointer
salsa2012e/x86-xmm4gcc -m32 -O3 -fomit-frame-pointer
salsa2012e/x86-xmm5gcc -m32 -O3 -fomit-frame-pointer
66471.00salsa208x86_xmm5gcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer (5.4.0 20160609)
70201.06salsa208e/x86-1gcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer
73121.10salsa208e/x86-pmgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer
74071.11salsa208e/x86-2gcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer
74101.11salsa208e/x86-3gcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer
75861.14salsa208e/x86-athlongcc -funroll-loops -m32 -O -fomit-frame-pointer
82421.24salsa208e/x86-mmxgcc -funroll-loops -m32 -O -fomit-frame-pointer
84091.27salsa208e/refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer
85801.29salsa208e/regsgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer
87211.31salsa208e/mergedgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer
106051.60salsa208refgcc -m32 -march=k8 -O3 -fomit-frame-pointer
salsa208e/x86-xmmgcc -m32 -O3 -fomit-frame-pointer
salsa208e/x86-xmm2gcc -m32 -O3 -fomit-frame-pointer
salsa208e/x86-xmm4gcc -m32 -O3 -fomit-frame-pointer
salsa208e/x86-xmm5gcc -m32 -O3 -fomit-frame-pointer
simon128128ctravx2gcc -m32 -O3 -fomit-frame-pointer
simon128128ctrsse4gcc -m32 -O3 -fomit-frame-pointer
simon128192ctravx2gcc -m32 -O3 -fomit-frame-pointer
simon128192ctrsse4gcc -m32 -O3 -fomit-frame-pointer
simon128256ctravx2gcc -m32 -O3 -fomit-frame-pointer
simon128256ctrsse4gcc -m32 -O3 -fomit-frame-pointer
simon64128ctravx2gcc -m32 -O3 -fomit-frame-pointer
simon64128ctrsse4gcc -m32 -O3 -fomit-frame-pointer
simon6496ctravx2gcc -m32 -O3 -fomit-frame-pointer
simon6496ctrsse4gcc -m32 -O3 -fomit-frame-pointer
74781.00snow20e/benchmarks/snow-2.0gcc -m32 -march=pentium2 -O3 -fomit-frame-pointer (5.4.0 20160609)
85851.00sosemanuke/submissions/sosemanukgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer (5.4.0 20160609)
speck128128ctravx2gcc -m32 -O3 -fomit-frame-pointer
speck128128ctrsse4gcc -m32 -O3 -fomit-frame-pointer
speck128192ctravx2gcc -m32 -O3 -fomit-frame-pointer
speck128192ctrsse4gcc -m32 -O3 -fomit-frame-pointer
speck128256ctravx2gcc -m32 -O3 -fomit-frame-pointer
speck128256ctrsse4gcc -m32 -O3 -fomit-frame-pointer
speck64128ctravx2gcc -m32 -O3 -fomit-frame-pointer
speck64128ctrsse4gcc -m32 -O3 -fomit-frame-pointer
speck6496ctravx2gcc -m32 -O3 -fomit-frame-pointer
speck6496ctrsse4gcc -m32 -O3 -fomit-frame-pointer
136801.00tpye/tpygcc -m32 -march=athlon -O3 -fomit-frame-pointer (5.4.0 20160609)
90481.00tpy6e/tpy6gcc -m32 -O3 -fomit-frame-pointer (5.4.0 20160609)
167421.00tpypye/tpypygcc -m32 -march=k8 -O3 -fomit-frame-pointer (5.4.0 20160609)
94881.00triviume/submissions/triviumgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer (5.4.0 20160609)
150721.00xsalsa20refgcc -m32 -march=athlon -O -fomit-frame-pointer