Implementation notes: amd64, haswell, crypto_stream

Computer: haswell
Architecture: amd64
CPU ID: GenuineIntel-000306c3-bfebfbff
CPU cycles/second: 2899272000...2899272000 (amd64cpuinfo)
SUPERCOP version: 20130419
Benchmark dates: 20130608...20130609

crypto_core

TimeRelative timePrimitiveImplementationCompiler
4681.00hsalsa20crypto_core/hsalsa20/refclang -O3 (4.2.1 Compatible Clang 3.2 (tags/RELEASE 32/final))
4761.02hsalsa20crypto_core/hsalsa20/ref2clang -O3 (4.2.1 Compatible Clang 3.2 (tags/RELEASE 32/final))
5001.00salsa20crypto_core/salsa20/refclang -O3 (4.2.1 Compatible Clang 3.2 (tags/RELEASE 32/final))
3561.00salsa2012crypto_core/salsa2012/refclang -O3 (4.2.1 Compatible Clang 3.2 (tags/RELEASE 32/final))
2721.00salsa208crypto_core/salsa208/refclang -O3 (4.2.1 Compatible Clang 3.2 (tags/RELEASE 32/final))

crypto_stream

TimeRelative timePrimitiveImplementationCompiler
aes128ctrcrypto_stream/aes128ctr/cryptoppg++ -m64 -O3 -fomit-frame-pointer
141641.00aes128estreamcrypto_stream/aes128estream/e/schwabe/core2gcc -funroll-loops -m64 -O2 -fomit-frame-pointer (4.8.1)
142161.00aes128estreamcrypto_stream/aes128estream/e/schwabe/athlon64-2clang -O3 -mavx
142401.01aes128estreamcrypto_stream/aes128estream/e/schwabe/athlon64-1gcc -m64 -march=barcelona -O -fomit-frame-pointer
150801.06aes128estreamcrypto_stream/aes128estream/e/hongjun/v1gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer
151201.07aes128estreamcrypto_stream/aes128estream/e/hongjun/v0gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer
158561.12aes128estreamcrypto_stream/aes128estream/e/bernstein/amd64-2gcc
164761.16aes128estreamcrypto_stream/aes128estream/e/bernstein/amd64-1gcc -m64 -O -fomit-frame-pointer
187961.33aes128estreamcrypto_stream/aes128estream/e/bernstein/little-2gcc -m64 -march=corei7 -O2 -fomit-frame-pointer
192361.36aes128estreamcrypto_stream/aes128estream/e/bernstein/little-1gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer
194801.38aes128estreamcrypto_stream/aes128estream/e/gladmangcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer
199521.41aes128estreamcrypto_stream/aes128estream/e/bernstein/big-1gcc -m64 -march=corei7 -O3 -fomit-frame-pointer
207961.47aes128estreamcrypto_stream/aes128estream/e/bernstein/little-3clang -O3 -mavx
208441.47aes128estreamcrypto_stream/aes128estream/e/bernstein/little-4gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer
aes192ctrcrypto_stream/aes192ctr/cryptoppg++ -m64 -O3 -fomit-frame-pointer
aes256ctrcrypto_stream/aes256ctr/cryptoppg++ -m64 -O3 -fomit-frame-pointer
210921.00aes256estreamcrypto_stream/aes256estream/e/hongjun/v1gcc -m64 -march=corei7 -O3 -fomit-frame-pointer (4.8.1)
212361.01aes256estreamcrypto_stream/aes256estream/e/hongjun/v0gcc -march=k8 -O3 -fomit-frame-pointer
250161.19aes256estreamcrypto_stream/aes256estream/e/gladmangcc -m64 -Os -fomit-frame-pointer
amastridcrypto_stream/amastrid/refg++ -m64 -O3 -fomit-frame-pointer
26001.00chacha12crypto_stream/chacha12/krovetz (1.0a3)clang -O3 -mavx (4.2.1 Compatible Clang 3.2 (tags/RELEASE 32/final))
31721.22chacha12crypto_stream/chacha12/e/amd64-xmm6gcc
59722.30chacha12crypto_stream/chacha12/e/amd64-3gcc -march=barcelona -Os -fomit-frame-pointer
64362.48chacha12crypto_stream/chacha12/e/mergedgcc -O3 -fomit-frame-pointer
66682.56chacha12crypto_stream/chacha12/e/regsgcc -funroll-loops -m64 -O3 -fomit-frame-pointer
66882.57chacha12crypto_stream/chacha12/e/refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer
chacha12crypto_stream/chacha12/amd64-ssse3gcc -m64 -O3 -fomit-frame-pointer
44371.00chacha20crypto_stream/chacha20/krovetz (1.0a3)clang -O3 -mavx (4.2.1 Compatible Clang 3.2 (tags/RELEASE 32/final))
48841.10chacha20crypto_stream/chacha20/e/amd64-xmm6gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer
93962.12chacha20crypto_stream/chacha20/e/amd64-3gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer
104322.35chacha20crypto_stream/chacha20/e/refgcc -march=k8 -O3 -fomit-frame-pointer
104362.35chacha20crypto_stream/chacha20/e/mergedgcc -O3 -fomit-frame-pointer
107142.41chacha20crypto_stream/chacha20/e/regsgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer
chacha20crypto_stream/chacha20/amd64-ssse3gcc -m64 -O3 -fomit-frame-pointer
18441.00chacha8crypto_stream/chacha8/krovetz (1.0a3)gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer (4.8.1)
23481.27chacha8crypto_stream/chacha8/e/amd64-xmm6gcc -funroll-loops
42202.29chacha8crypto_stream/chacha8/e/amd64-3gcc -m64 -march=barcelona -O3 -fomit-frame-pointer
47002.55chacha8crypto_stream/chacha8/e/mergedgcc -march=barcelona -O -fomit-frame-pointer
49722.70chacha8crypto_stream/chacha8/e/regsgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer
50132.72chacha8crypto_stream/chacha8/e/refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer
chacha8crypto_stream/chacha8/amd64-ssse3gcc -m64 -O3 -fomit-frame-pointer
61111.00cryptmtv3crypto_stream/cryptmtv3/e/v3gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer (4.8.1)
152871.00dragoncrypto_stream/dragon/e/submissions/dragongcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer (4.8.1)
169041.00hc128crypto_stream/hc128/e/hc-128/200701agcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer (4.8.1)
171401.01hc128crypto_stream/hc128/e/hc-128/200606gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer
175001.04hc128crypto_stream/hc128/e/hc-128/200701bgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer
415481.00hc256crypto_stream/hc256/e/hc-256/200701gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer (4.8.1)
419041.01hc256crypto_stream/hc256/e/hc-256/200511gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer (4.8.1)
73801.00lexv2crypto_stream/lexv2/e/v2/schwabe/amd64-1gcc -m64 -march=nocona -O3 -fomit-frame-pointer (4.8.1)
74001.00lexv2crypto_stream/lexv2/e/v2/schwabe/amd64-2clang -O3
76321.03lexv2crypto_stream/lexv2/e/v2/refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer
49401.00nlsv2crypto_stream/nlsv2/e/v2/sync/2gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer (4.8.1)
120442.44nlsv2crypto_stream/nlsv2/e/v2/sync/1gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer
ocelot1crypto_stream/ocelot1/refg++ -m64 -O3 -fomit-frame-pointer
ocelot2crypto_stream/ocelot2/refg++ -m64 -O3 -fomit-frame-pointer
panamacrypto_stream/panama/cryptoppg++ -m64 -O3 -fomit-frame-pointer
52761.00rabbitcrypto_stream/rabbit/e/opt/2/3clang -O3 -mavx (4.2.1 Compatible Clang 3.2 (tags/RELEASE 32/final))
54641.04rabbitcrypto_stream/rabbit/e/opt/1/4clang -O3
56681.07rabbitcrypto_stream/rabbit/e/opt/2/2clang -O3
56881.08rabbitcrypto_stream/rabbit/e/opt/1/3clang -O3
58721.11rabbitcrypto_stream/rabbit/e/opt/1/2clang -O3
81521.55rabbitcrypto_stream/rabbit/e/refgcc -m64 -march=k8 -O3 -fomit-frame-pointer
83641.59rabbitcrypto_stream/rabbit/e/opt/2/1clang -O3 -mavx (4.2.1 Compatible Clang 3.2 (tags/RELEASE 32/final))
89721.70rabbitcrypto_stream/rabbit/e/opt/1/1gcc -funroll-loops -m64 -Os -fomit-frame-pointer
rabbitcrypto_stream/rabbit/e/opt/2/4gcc -m64 -O3 -fomit-frame-pointer
rabbitcrypto_stream/rabbit/e/opt/2/5gcc -m64 -O3 -fomit-frame-pointer
48561.00salsa20crypto_stream/salsa20/amd64_xmm6gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer (4.8.1)
48601.00salsa20crypto_stream/salsa20/e/amd64-xmm6gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer
52121.07salsa20crypto_stream/salsa20/e/amd64-xmm5gcc
90401.86salsa20crypto_stream/salsa20/e/amd64-xmm2gcc -m64 -march=nocona -O -fomit-frame-pointer
94841.95salsa20crypto_stream/salsa20/e/amd64-xmmgcc -funroll-loops -m64 -O3 -fomit-frame-pointer
99242.04salsa20crypto_stream/salsa20/e/mergedgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer
111642.30salsa20crypto_stream/salsa20/e/amd64-3gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer
111762.30salsa20crypto_stream/salsa20/e/amd64-2gcc -march=nocona -Os -fomit-frame-pointer
123562.54salsa20crypto_stream/salsa20/refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer
126892.61salsa20crypto_stream/salsa20/e/regsgcc -m64 -march=barcelona -O -fomit-frame-pointer
127042.62salsa20crypto_stream/salsa20/e/amd64-1gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer
129242.66salsa20crypto_stream/salsa20/e/refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer
31681.00salsa2012crypto_stream/salsa2012/e/amd64-xmm6gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer (4.8.1)
32041.01salsa2012crypto_stream/salsa2012/amd64_xmm6gcc -m64 -O3 -fomit-frame-pointer
34001.07salsa2012crypto_stream/salsa2012/e/amd64-xmm5gcc
58041.83salsa2012crypto_stream/salsa2012/e/amd64-xmm2gcc -fno-schedule-insns -O3 -fomit-frame-pointer
60481.91salsa2012crypto_stream/salsa2012/e/amd64-xmmgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer
65582.07salsa2012crypto_stream/salsa2012/e/mergedgcc -m64 -march=barcelona -O -fomit-frame-pointer
70002.21salsa2012crypto_stream/salsa2012/e/amd64-3gcc
70122.21salsa2012crypto_stream/salsa2012/e/amd64-2gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer
79922.52salsa2012crypto_stream/salsa2012/e/amd64-1gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer
89902.84salsa2012crypto_stream/salsa2012/refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer
90722.86salsa2012crypto_stream/salsa2012/e/refgcc -funroll-loops -m64 -O -fomit-frame-pointer
91242.88salsa2012crypto_stream/salsa2012/e/regsgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer
23001.00salsa208crypto_stream/salsa208/e/amd64-xmm6gcc -m64 -Os -fomit-frame-pointer (4.8.1)
23121.01salsa208crypto_stream/salsa208/amd64_xmm6gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer
24761.08salsa208crypto_stream/salsa208/e/amd64-xmm5gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer
41921.82salsa208crypto_stream/salsa208/e/amd64-xmm2gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer
43281.88salsa208crypto_stream/salsa208/e/amd64-xmmgcc -m64 -march=barcelona -O -fomit-frame-pointer
45521.98salsa208crypto_stream/salsa208/e/mergedgcc -funroll-loops -march=nocona -O -fomit-frame-pointer
48762.12salsa208crypto_stream/salsa208/e/amd64-3gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer
49122.14salsa208crypto_stream/salsa208/e/amd64-2gcc -fno-schedule-insns -O3 -fomit-frame-pointer
56162.44salsa208crypto_stream/salsa208/e/amd64-1gcc -funroll-loops -m64 -O3 -fomit-frame-pointer
67322.93salsa208crypto_stream/salsa208/e/regsgcc -funroll-loops -m64 -O -fomit-frame-pointer
68562.98salsa208crypto_stream/salsa208/refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer
73083.18salsa208crypto_stream/salsa208/e/refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer
45521.00snow20crypto_stream/snow20/e/benchmarks/snow-2.0gcc -m64 -march=corei7 -O3 -fomit-frame-pointer (4.8.1)
52921.00sosemanukcrypto_stream/sosemanuk/e/submissions/sosemanukgcc -m64 -march=corei7-avx -O -fomit-frame-pointer (4.8.1)
sosemanukcrypto_stream/sosemanuk/cryptoppg++ -m64 -O3 -fomit-frame-pointer
102801.00tpycrypto_stream/tpy/e/tpygcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer (4.8.1)
71721.00tpy6crypto_stream/tpy6/e/tpy6gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer (4.8.1)
122721.00tpypycrypto_stream/tpypy/e/tpypygcc -m64 -march=core2 -O2 -fomit-frame-pointer (4.8.1)
35241.00triviumcrypto_stream/trivium/e/submissions/triviumclang -O3 (4.2.1 Compatible Clang 3.2 (tags/RELEASE 32/final))
53601.00xsalsa20crypto_stream/xsalsa20/refgcc -m64 -Os -fomit-frame-pointer (4.8.1)