Implementation notes: x86, bulldozer, crypto_stream

Computer: bulldozer
Architecture: x86
CPU ID: AuthenticAMD-00600f12-178bfbff
CPU cycles/second: 3624264999...3624322000 (x86cpuinfo)
SUPERCOP version: 20120709
Benchmark dates: 20120222...20120716

crypto_core

TimeRelative timePrimitiveImplementationCompiler
12801.00hsalsa20crypto_core/hsalsa20/refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer (4.6.3)
12801.00hsalsa20crypto_core/hsalsa20/ref2gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer (4.6.3)
14311.00salsa20crypto_core/salsa20/refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer (4.6.3)
9161.00salsa2012crypto_core/salsa2012/refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer (4.6.3)
7261.00salsa208crypto_core/salsa208/refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer (4.6.3)

crypto_stream

TimeRelative timePrimitiveImplementationCompiler
218951.00aes128estreamcrypto_stream/aes128estream/e/schwabe/pentium4-1gcc -m32 -march=k8 -O -fomit-frame-pointer (4.6.3)
268371.23aes128estreamcrypto_stream/aes128estream/e/bernstein/x86-mmx-1gcc -m32 -march=k6-3 -O3 -fomit-frame-pointer
278801.27aes128estreamcrypto_stream/aes128estream/e/hongjun/v1gcc -m32 -march=barcelona -O -fomit-frame-pointer
281121.28aes128estreamcrypto_stream/aes128estream/e/hongjun/v0gcc -m32 -march=barcelona -O -fomit-frame-pointer
348151.59aes128estreamcrypto_stream/aes128estream/e/gladmangcc -m32 -march=barcelona -O -fomit-frame-pointer
375451.71aes128estreamcrypto_stream/aes128estream/e/bernstein/little-3gcc -m32 -march=athlon -O2 -fomit-frame-pointer
388211.77aes128estreamcrypto_stream/aes128estream/e/bernstein/little-4gcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer
551452.52aes128estreamcrypto_stream/aes128estream/e/bernstein/little-2gcc -m32 -march=pentium3 -O -fomit-frame-pointer
556762.54aes128estreamcrypto_stream/aes128estream/e/bernstein/little-1gcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer
571172.61aes128estreamcrypto_stream/aes128estream/e/bernstein/big-1gcc -m32 -march=corei7 -O3 -fomit-frame-pointer
393791.00aes256estreamcrypto_stream/aes256estream/e/hongjun/v0gcc -m32 -march=athlon -O -fomit-frame-pointer (4.6.3)
395501.00aes256estreamcrypto_stream/aes256estream/e/hongjun/v1gcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer
449091.14aes256estreamcrypto_stream/aes256estream/e/gladmangcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer
52821.00chacha12crypto_stream/chacha12/e/x86-xmm6gcc -m32 -Os -fomit-frame-pointer (4.6.3)
53851.02chacha12crypto_stream/chacha12/e/x86-xmm5gcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer
105011.99chacha12crypto_stream/chacha12/e/x86-xmm2gcc -m32 -march=pentium-m -O -fomit-frame-pointer
115672.19chacha12crypto_stream/chacha12/e/x86-xmmgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer
122942.33chacha12crypto_stream/chacha12/e/mergedgcc -m32 -march=i386 -O -fomit-frame-pointer
129922.46chacha12crypto_stream/chacha12/e/regsgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer
137112.60chacha12crypto_stream/chacha12/e/refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer
137242.60chacha12crypto_stream/chacha12/e/x86-1gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer
142752.70chacha12crypto_stream/chacha12/e/x86-mmxgcc -funroll-loops -m32 -O -fomit-frame-pointer
chacha12crypto_stream/chacha12/amd64-ssse3gcc -m32 -O3 -fomit-frame-pointer
chacha12crypto_stream/chacha12/krovetzgcc -m32 -O3 -fomit-frame-pointer
80951.00chacha20crypto_stream/chacha20/e/x86-xmm6gcc -m32 -march=k6-2 -O -fomit-frame-pointer
82321.02chacha20crypto_stream/chacha20/e/x86-xmm5gcc -m32 -march=pentium2 -O -fomit-frame-pointer
168702.08chacha20crypto_stream/chacha20/e/x86-xmm2gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer
180542.23chacha20crypto_stream/chacha20/e/mergedgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer
186452.30chacha20crypto_stream/chacha20/e/x86-xmmgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer
209722.59chacha20crypto_stream/chacha20/e/regsgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer
218952.70chacha20crypto_stream/chacha20/e/x86-1gcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer
224272.77chacha20crypto_stream/chacha20/e/refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer
226102.79chacha20crypto_stream/chacha20/e/x86-mmxgcc -funroll-loops -m32 -O3 -fomit-frame-pointer
chacha20crypto_stream/chacha20/amd64-ssse3gcc -m32 -O3 -fomit-frame-pointer
chacha20crypto_stream/chacha20/krovetzgcc -m32 -O3 -fomit-frame-pointer
38661.00chacha8crypto_stream/chacha8/e/x86-xmm6gcc -m32 -Os -fomit-frame-pointer (4.6.3)
39471.02chacha8crypto_stream/chacha8/e/x86-xmm5gcc -m32 -march=pentium4 -O -fomit-frame-pointer
40911.06chacha8crypto_stream/chacha8/krovetzgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer
72781.88chacha8crypto_stream/chacha8/e/x86-xmm2gcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer
80092.07chacha8crypto_stream/chacha8/e/x86-xmmgcc -m32 -march=nocona -O3 -fomit-frame-pointer
89692.32chacha8crypto_stream/chacha8/e/mergedgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer
96552.50chacha8crypto_stream/chacha8/e/x86-1gcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer
97202.51chacha8crypto_stream/chacha8/e/regsgcc -m32 -march=k8 -O3 -fomit-frame-pointer
99062.56chacha8crypto_stream/chacha8/e/refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer
100262.59chacha8crypto_stream/chacha8/e/x86-mmxgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer
chacha8crypto_stream/chacha8/amd64-ssse3gcc -m32 -O3 -fomit-frame-pointer
120811.00cryptmtv3crypto_stream/cryptmtv3/e/v3gcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer (4.6.3)
366681.00dragoncrypto_stream/dragon/e/submissions/dragongcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer (4.6.3)
332311.00hc128crypto_stream/hc128/e/hc-128/200606gcc -m32 -march=k6-2 -Os -fomit-frame-pointer (4.6.3)
335711.01hc128crypto_stream/hc128/e/hc-128/200701bgcc -m32 -march=core2 -O3 -fomit-frame-pointer
335831.01hc128crypto_stream/hc128/e/hc-128/200701agcc -m32 -march=nocona -O3 -fomit-frame-pointer
904771.00hc256crypto_stream/hc256/e/hc-256/200701gcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer (4.6.3)
909161.00hc256crypto_stream/hc256/e/hc-256/200511gcc -m32 -march=corei7 -O3 -fomit-frame-pointer
155961.00lexv2crypto_stream/lexv2/e/v2/refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer (4.6.3)
86921.00nlsv2crypto_stream/nlsv2/e/v2/sync/2gcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer (4.6.3)
213382.45nlsv2crypto_stream/nlsv2/e/v2/sync/1gcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer
50471.00rabbitcrypto_stream/rabbit/e/opt/2/5gcc -m32 -O3 -fomit-frame-pointer (4.6.3)
92031.82rabbitcrypto_stream/rabbit/e/opt/1/3gcc -m32 -march=k6-2 -O3 -fomit-frame-pointer
92551.83rabbitcrypto_stream/rabbit/e/opt/2/3gcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer
92641.84rabbitcrypto_stream/rabbit/e/opt/2/4gcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer
96501.91rabbitcrypto_stream/rabbit/e/opt/1/4gcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer
104642.07rabbitcrypto_stream/rabbit/e/opt/1/2gcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer
106972.12rabbitcrypto_stream/rabbit/e/opt/2/2gcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer
148972.95rabbitcrypto_stream/rabbit/e/opt/1/1gcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer
150012.97rabbitcrypto_stream/rabbit/e/opt/2/1gcc -m32 -march=k6-2 -O -fomit-frame-pointer
175083.47rabbitcrypto_stream/rabbit/e/refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer
70031.00salsa20crypto_stream/salsa20/x86_xmm5gcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer (4.6.3)
70041.00salsa20crypto_stream/salsa20/e/x86-xmm5gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer
79141.13salsa20crypto_stream/salsa20/e/x86-xmm4gcc -m32 -march=corei7 -O3 -fomit-frame-pointer
154802.21salsa20crypto_stream/salsa20/e/x86-xmm2gcc -m32 -march=barcelona -O3 -fomit-frame-pointer
154822.21salsa20crypto_stream/salsa20/e/x86-xmmgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer
189792.71salsa20crypto_stream/salsa20/e/x86-2gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
190192.72salsa20crypto_stream/salsa20/e/x86-pmgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer
190302.72salsa20crypto_stream/salsa20/e/x86-3gcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer
191842.74salsa20crypto_stream/salsa20/e/x86-athlongcc -m32 -march=barcelona -O3 -fomit-frame-pointer
196442.81salsa20crypto_stream/salsa20/e/x86-1gcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer
212873.04salsa20crypto_stream/salsa20/e/x86-mmxgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer
246743.52salsa20crypto_stream/salsa20/e/mergedgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer
271913.88salsa20crypto_stream/salsa20/e/regsgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer
275873.94salsa20crypto_stream/salsa20/e/refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer
313794.48salsa20crypto_stream/salsa20/refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer
46491.00salsa2012crypto_stream/salsa2012/x86_xmm5gcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer (4.6.3)
47151.01salsa2012crypto_stream/salsa2012/e/x86-xmm5gcc -m32 -march=barcelona -O -fomit-frame-pointer
52451.13salsa2012crypto_stream/salsa2012/e/x86-xmm4gcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer
97982.11salsa2012crypto_stream/salsa2012/e/x86-xmmgcc -m32 -Os -fomit-frame-pointer
98072.11salsa2012crypto_stream/salsa2012/e/x86-xmm2gcc -m32 -Os -fomit-frame-pointer
121022.60salsa2012crypto_stream/salsa2012/e/x86-3gcc -m32 -march=barcelona -O3 -fomit-frame-pointer
121382.61salsa2012crypto_stream/salsa2012/e/x86-athlongcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer
121392.61salsa2012crypto_stream/salsa2012/e/x86-2gcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer
121642.62salsa2012crypto_stream/salsa2012/e/x86-pmgcc -m32 -march=barcelona -O3 -fomit-frame-pointer
124362.67salsa2012crypto_stream/salsa2012/e/x86-1gcc -m32 -march=pentium -Os -fomit-frame-pointer
134512.89salsa2012crypto_stream/salsa2012/e/x86-mmxgcc -m32 -march=pentium-m -O -fomit-frame-pointer
152213.27salsa2012crypto_stream/salsa2012/e/mergedgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer
167863.61salsa2012crypto_stream/salsa2012/e/regsgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer
174813.76salsa2012crypto_stream/salsa2012/e/refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer
190344.09salsa2012crypto_stream/salsa2012/refgcc -m32 -march=nocona -O3 -fomit-frame-pointer
34671.00salsa208crypto_stream/salsa208/x86_xmm5gcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer (4.6.3)
34911.01salsa208crypto_stream/salsa208/e/x86-xmm5gcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer
39211.13salsa208crypto_stream/salsa208/e/x86-xmm4gcc -m32 -march=core2 -O -fomit-frame-pointer
69642.01salsa208crypto_stream/salsa208/e/x86-xmmgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer
69712.01salsa208crypto_stream/salsa208/e/x86-xmm2gcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer
86292.49salsa208crypto_stream/salsa208/e/x86-3gcc -m32 -march=pentium-m -O -fomit-frame-pointer
86332.49salsa208crypto_stream/salsa208/e/x86-pmgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer
86342.49salsa208crypto_stream/salsa208/e/x86-athlongcc -m32 -march=pentium2 -Os -fomit-frame-pointer
86382.49salsa208crypto_stream/salsa208/e/x86-2gcc -m32 -march=nocona -O2 -fomit-frame-pointer
87952.54salsa208crypto_stream/salsa208/e/x86-1gcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer
95082.74salsa208crypto_stream/salsa208/e/x86-mmxgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer
100082.89salsa208crypto_stream/salsa208/e/mergedgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer
119763.45salsa208crypto_stream/salsa208/e/regsgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer
125503.62salsa208crypto_stream/salsa208/e/refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer
147184.25salsa208crypto_stream/salsa208/refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer
82501.00snow20crypto_stream/snow20/e/benchmarks/snow-2.0gcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer (4.6.3)
118951.00sosemanukcrypto_stream/sosemanuk/e/submissions/sosemanukgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer (4.6.3)
128291.00tpycrypto_stream/tpy/e/tpygcc -m32 -march=pentium3 -O -fomit-frame-pointer (4.6.3)
86141.00tpy6crypto_stream/tpy6/e/tpy6gcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer (4.6.3)
152071.00tpypycrypto_stream/tpypy/e/tpypygcc -m32 -march=k8 -O3 -fomit-frame-pointer (4.6.3)
108781.00triviumcrypto_stream/trivium/e/submissions/triviumgcc -m32 -march=k6-2 -O -fomit-frame-pointer (4.6.3)
81861.00xsalsa20crypto_stream/xsalsa20/refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer (4.6.3)