Implementation notes: x86, berlekamp, crypto_stream

Computer: berlekamp
Architecture: x86
CPU ID: GenuineIntel-00010677-bfebfbff
CPU cycles/second: 2833000000...2833000000 (x86cpuinfo)
SUPERCOP version: 20130419
Benchmark dates: 20120527...20130422

crypto_core

TimeRelative timePrimitiveImplementationCompiler
8161.00hsalsa20crypto_core/hsalsa20/ref2gcc -m32 -march=athlon -O2 -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
8251.01hsalsa20crypto_core/hsalsa20/refgcc -m32 -march=k8 -O2 -fomit-frame-pointer
9351.00salsa20crypto_core/salsa20/refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
6551.00salsa2012crypto_core/salsa2012/refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer
4851.00salsa208crypto_core/salsa208/refgcc -m32 -march=athlon -O2 -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))

crypto_stream

TimeRelative timePrimitiveImplementationCompiler
218791.00aes128ctrcrypto_stream/aes128ctr/cryptoppg++ -m32 -march=pentium4 -O2 -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
188111.00aes128estreamcrypto_stream/aes128estream/e/schwabe/pentium4-1gcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer
221591.18aes128estreamcrypto_stream/aes128estream/e/bernstein/x86-mmx-1gcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer
291131.55aes128estreamcrypto_stream/aes128estream/e/hongjun/v1gcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer
296741.58aes128estreamcrypto_stream/aes128estream/e/bernstein/little-4gcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer
300901.60aes128estreamcrypto_stream/aes128estream/e/hongjun/v0gcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer
316371.68aes128estreamcrypto_stream/aes128estream/e/bernstein/little-3gcc -m32 -march=pentium2 -O -fomit-frame-pointer
345861.84aes128estreamcrypto_stream/aes128estream/e/gladmangcc -m32 -march=i386 -O -fomit-frame-pointer
394492.10aes128estreamcrypto_stream/aes128estream/e/bernstein/little-2gcc -m32 -march=prescott -O -fomit-frame-pointer
405282.15aes128estreamcrypto_stream/aes128estream/e/bernstein/little-1gcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer
427042.27aes128estreamcrypto_stream/aes128estream/e/bernstein/big-1gcc -funroll-loops -m32 -O -fomit-frame-pointer
258571.00aes192ctrcrypto_stream/aes192ctr/cryptoppg++ -m32 -march=pentium -O2 -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
300221.00aes256ctrcrypto_stream/aes256ctr/cryptoppg++ -m32 -march=k8 -O2 -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
418111.00aes256estreamcrypto_stream/aes256estream/e/hongjun/v1gcc -m32 -march=pentium2 -Os -fomit-frame-pointer
437151.05aes256estreamcrypto_stream/aes256estream/e/hongjun/v0gcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer
470991.13aes256estreamcrypto_stream/aes256estream/e/gladmangcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer
amastridcrypto_stream/amastrid/refg++ -m32 -O3 -fomit-frame-pointer
40551.00chacha12crypto_stream/chacha12/krovetz (1.0a3)gcc -m32 -march=core2 -Os -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
45141.11chacha12crypto_stream/chacha12/e/x86-xmm6gcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer
50061.23chacha12crypto_stream/chacha12/e/x86-xmm5gcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer
64261.58chacha12crypto_stream/chacha12/e/x86-xmm2gcc -m32 -march=pentium2 -O3 -fomit-frame-pointer
68251.68chacha12crypto_stream/chacha12/e/x86-xmmgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer
93502.31chacha12crypto_stream/chacha12/e/mergedgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer
96982.39chacha12crypto_stream/chacha12/e/regsgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer
99792.46chacha12crypto_stream/chacha12/e/x86-1gcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer
100302.47chacha12crypto_stream/chacha12/e/x86-mmxgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer
108632.68chacha12crypto_stream/chacha12/e/refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer
chacha12crypto_stream/chacha12/amd64-ssse3gcc -m32 -O3 -fomit-frame-pointer
64601.00chacha20crypto_stream/chacha20/krovetz (1.0a3)gcc -m32 -march=core2 -Os -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
69951.08chacha20crypto_stream/chacha20/e/x86-xmm6gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
77601.20chacha20crypto_stream/chacha20/e/x86-xmm5gcc -m32 -march=pentium -Os -fomit-frame-pointer
103281.60chacha20crypto_stream/chacha20/e/x86-xmm2gcc -m32 -march=athlon -Os -fomit-frame-pointer
110161.71chacha20crypto_stream/chacha20/e/x86-xmmgcc -m32 -march=pentium4 -O -fomit-frame-pointer
149262.31chacha20crypto_stream/chacha20/e/mergedgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer
154192.39chacha20crypto_stream/chacha20/e/x86-1gcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer
156572.42chacha20crypto_stream/chacha20/e/x86-mmxgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer
157162.43chacha20crypto_stream/chacha20/e/regsgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer
167022.59chacha20crypto_stream/chacha20/e/refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer
chacha20crypto_stream/chacha20/amd64-ssse3gcc -m32 -O3 -fomit-frame-pointer
28471.00chacha8crypto_stream/chacha8/krovetz (1.0a3)gcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
32901.16chacha8crypto_stream/chacha8/e/x86-xmm6gcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer
36131.27chacha8crypto_stream/chacha8/e/x86-xmm5gcc -m32 -march=k6-3 -O2 -fomit-frame-pointer
44291.56chacha8crypto_stream/chacha8/e/x86-xmm2gcc -m32 -Os -fomit-frame-pointer
47431.67chacha8crypto_stream/chacha8/e/x86-xmmgcc -m32 -march=barcelona -Os -fomit-frame-pointer
69442.44chacha8crypto_stream/chacha8/e/mergedgcc -funroll-loops -m32 -O2 -fomit-frame-pointer
69702.45chacha8crypto_stream/chacha8/e/x86-mmxgcc -m32 -march=i386 -O -fomit-frame-pointer
72512.55chacha8crypto_stream/chacha8/e/x86-1gcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer
74542.62chacha8crypto_stream/chacha8/e/regsgcc -m32 -march=k8 -O3 -fomit-frame-pointer
78542.76chacha8crypto_stream/chacha8/e/refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer
chacha8crypto_stream/chacha8/amd64-ssse3gcc -m32 -O3 -fomit-frame-pointer
75221.00cryptmtv3crypto_stream/cryptmtv3/e/v3gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
274461.00dragoncrypto_stream/dragon/e/submissions/dragongcc -m32 -march=barcelona -O3 -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
268001.00hc128crypto_stream/hc128/e/hc-128/200701agcc -m32 -O -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
271831.01hc128crypto_stream/hc128/e/hc-128/200701bgcc -funroll-loops -m32 -O3 -fomit-frame-pointer
272001.01hc128crypto_stream/hc128/e/hc-128/200606gcc -funroll-loops -m32 -O3 -fomit-frame-pointer
675411.00hc256crypto_stream/hc256/e/hc-256/200701gcc -m32 -march=nocona -O -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
675661.00hc256crypto_stream/hc256/e/hc-256/200511gcc -m32 -march=nocona -O -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
155721.00lexv2crypto_stream/lexv2/e/v2/refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
74211.00nlsv2crypto_stream/nlsv2/e/v2/sync/2gcc -m32 -march=athlon -O2 -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
178672.41nlsv2crypto_stream/nlsv2/e/v2/sync/1gcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer
ocelot1crypto_stream/ocelot1/refg++ -m32 -O3 -fomit-frame-pointer
ocelot2crypto_stream/ocelot2/refg++ -m32 -O3 -fomit-frame-pointer
69451.00panamacrypto_stream/panama/cryptoppg++ -m32 -O -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
41141.00rabbitcrypto_stream/rabbit/e/opt/2/5gcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
70981.73rabbitcrypto_stream/rabbit/e/opt/2/4gcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer
74041.80rabbitcrypto_stream/rabbit/e/opt/2/3gcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer
74381.81rabbitcrypto_stream/rabbit/e/opt/1/4gcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer
80501.96rabbitcrypto_stream/rabbit/e/opt/1/3gcc -m32 -march=athlon -O -fomit-frame-pointer
97832.38rabbitcrypto_stream/rabbit/e/opt/2/2gcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer
98002.38rabbitcrypto_stream/rabbit/e/opt/1/2gcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer
119762.91rabbitcrypto_stream/rabbit/e/opt/1/1gcc -m32 -march=k6-2 -O -fomit-frame-pointer
120192.92rabbitcrypto_stream/rabbit/e/opt/2/1gcc -m32 -march=k6-3 -O -fomit-frame-pointer
120702.93rabbitcrypto_stream/rabbit/e/refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer
66391.00salsa20crypto_stream/salsa20/x86_xmm5gcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
66731.01salsa20crypto_stream/salsa20/e/x86-xmm5gcc -m32 -march=core2 -Os -fomit-frame-pointer
75141.13salsa20crypto_stream/salsa20/e/x86-xmm4gcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer
98771.49salsa20crypto_stream/salsa20/e/x86-xmm2gcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer
108631.64salsa20crypto_stream/salsa20/e/x86-xmmgcc -m32 -march=core2 -Os -fomit-frame-pointer
148922.24salsa20crypto_stream/salsa20/e/x86-athlongcc -m32 -march=k6 -O3 -fomit-frame-pointer
149602.25salsa20crypto_stream/salsa20/e/x86-pmgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer
149772.26salsa20crypto_stream/salsa20/e/x86-3gcc -m32 -march=barcelona -Os -fomit-frame-pointer
149852.26salsa20crypto_stream/salsa20/e/x86-2gcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer
152062.29salsa20crypto_stream/salsa20/e/x86-mmxgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer
154272.32salsa20crypto_stream/salsa20/e/x86-1gcc -funroll-loops -m32 -O3 -fomit-frame-pointer
166172.50salsa20crypto_stream/salsa20/e/mergedgcc -m32 -O -fomit-frame-pointer
190822.87salsa20crypto_stream/salsa20/e/regsgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer
200433.02salsa20crypto_stream/salsa20/e/refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer
228223.44salsa20crypto_stream/salsa20/refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer
43351.00salsa2012crypto_stream/salsa2012/e/x86-xmm5gcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer
43351.00salsa2012crypto_stream/salsa2012/x86_xmm5gcc -m32 -march=pentium3 -Os -fomit-frame-pointer
48871.13salsa2012crypto_stream/salsa2012/e/x86-xmm4gcc -m32 -march=pentium-m -O3 -fomit-frame-pointer
63071.45salsa2012crypto_stream/salsa2012/e/x86-xmm2gcc -m32 -march=core2 -Os -fomit-frame-pointer
68171.57salsa2012crypto_stream/salsa2012/e/x86-xmmgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer
96732.23salsa2012crypto_stream/salsa2012/e/x86-athlongcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer
96992.24salsa2012crypto_stream/salsa2012/e/x86-pmgcc -m32 -march=k8 -O3 -fomit-frame-pointer
97332.25salsa2012crypto_stream/salsa2012/e/x86-mmxgcc -m32 -O3 -fomit-frame-pointer
97412.25salsa2012crypto_stream/salsa2012/e/x86-3gcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer
97492.25salsa2012crypto_stream/salsa2012/e/x86-2gcc -m32 -O3 -fomit-frame-pointer
99622.30salsa2012crypto_stream/salsa2012/e/x86-1gcc -m32 -march=pentium-m -O -fomit-frame-pointer
100812.33salsa2012crypto_stream/salsa2012/e/mergedgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer
119432.76salsa2012crypto_stream/salsa2012/e/regsgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer
124102.86salsa2012crypto_stream/salsa2012/e/refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer
163453.77salsa2012crypto_stream/salsa2012/refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer
31711.00salsa208crypto_stream/salsa208/x86_xmm5gcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
32041.01salsa208crypto_stream/salsa208/e/x86-xmm5gcc -m32 -Os -fomit-frame-pointer
36211.14salsa208crypto_stream/salsa208/e/x86-xmm4gcc -m32 -march=pentium3 -O3 -fomit-frame-pointer
44801.41salsa208crypto_stream/salsa208/e/x86-xmm2gcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer
48791.54salsa208crypto_stream/salsa208/e/x86-xmmgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer
69962.21salsa208crypto_stream/salsa208/e/x86-mmxgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer
70802.23salsa208crypto_stream/salsa208/e/x86-2gcc -m32 -O -fomit-frame-pointer
70812.23salsa208crypto_stream/salsa208/e/x86-3gcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer
70982.24salsa208crypto_stream/salsa208/e/x86-athlongcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer
71312.25salsa208crypto_stream/salsa208/e/x86-pmgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer
71992.27salsa208crypto_stream/salsa208/e/mergedgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer
72172.28salsa208crypto_stream/salsa208/e/x86-1gcc -m32 -O2 -fomit-frame-pointer
85932.71salsa208crypto_stream/salsa208/e/regsgcc -m32 -march=barcelona -O3 -fomit-frame-pointer
92992.93salsa208crypto_stream/salsa208/e/refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer
118073.72salsa208crypto_stream/salsa208/refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer
72511.00snow20crypto_stream/snow20/e/benchmarks/snow-2.0gcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
69531.00sosemanukcrypto_stream/sosemanuk/cryptoppg++ -m32 -march=barcelona -O3 -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
105741.52sosemanukcrypto_stream/sosemanuk/e/submissions/sosemanukgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer
113981.00tpycrypto_stream/tpy/e/tpygcc -m32 -march=prescott -Os -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
80921.00tpy6crypto_stream/tpy6/e/tpy6gcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
147391.00tpypycrypto_stream/tpypy/e/tpypygcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
77261.00triviumcrypto_stream/trivium/e/submissions/triviumgcc -m32 -march=barcelona -O2 -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))
74461.00xsalsa20crypto_stream/xsalsa20/refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer (4.4.1 20090725 (Red Hat 4.4.1-2))