Implementation notes: amd64, h4e350, crypto_sign

Computer: h4e350
Architecture: amd64
CPU ID: AuthenticAMD-00500f10-178bfbff
CPU cycles/second: 1600000000...1600000000 (amd64cpuinfo)
SUPERCOP version: 20141014
Benchmark dates: 20140526...20141020

crypto_sign

TimeRelative timePrimitiveImplementationCompiler
13183381.003icpcrypto_sign/3icp/refclang++ -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer (4.2.1 Compatible Ubuntu Clang 3.0 (tags/RELEASE 30/final))
blscrypto_sign/bls/refg++ -m64 -O3 -fomit-frame-pointer
16233571.00donald1024crypto_sign/donald1024/opensslclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer (4.2.1 Compatible Ubuntu Clang 3.0 (tags/RELEASE 30/final))
48097501.00donald2048crypto_sign/donald2048/opensslgcc -O2 -fomit-frame-pointer (4.6.3)
donald2048crypto_sign/donald2048/cryptoppg++ -m64 -O3 -fomit-frame-pointer
7655161.00donald512crypto_sign/donald512/opensslgcc -m64 -march=k8 -O3 -fomit-frame-pointer (4.6.3)
81838441.00ecdonaldb163crypto_sign/ecdonaldb163/opensslgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer (4.6.3)
112927561.00ecdonaldb233crypto_sign/ecdonaldb233/opensslgcc -m64 -march=core2 -O3 -fomit-frame-pointer (4.6.3)
256859581.00ecdonaldb283crypto_sign/ecdonaldb283/opensslgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer (4.6.3)
581992081.00ecdonaldb409crypto_sign/ecdonaldb409/opensslclang -O3 -fwrapv -mavx2 -fomit-frame-pointer (4.2.1 Compatible Ubuntu Clang 3.0 (tags/RELEASE 30/final))
1277678851.00ecdonaldb571crypto_sign/ecdonaldb571/opensslgcc -funroll-loops -O3 -fomit-frame-pointer (4.6.3)
76782181.00ecdonaldk163crypto_sign/ecdonaldk163/opensslgcc -fno-schedule-insns -O2 -fomit-frame-pointer (4.6.3)
105821131.00ecdonaldk233crypto_sign/ecdonaldk233/opensslgcc -m64 -march=nocona -O -fomit-frame-pointer (4.6.3)
233384701.00ecdonaldk283crypto_sign/ecdonaldk283/opensslgcc -funroll-loops -march=nocona -O -fomit-frame-pointer (4.6.3)
518720701.00ecdonaldk409crypto_sign/ecdonaldk409/opensslgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer (4.6.3)
1127712121.00ecdonaldk571crypto_sign/ecdonaldk571/opensslgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3)
31019491.00ecdonaldp160crypto_sign/ecdonaldp160/opensslgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer (4.6.3)
36386041.00ecdonaldp192crypto_sign/ecdonaldp192/opensslgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer (4.6.3)
15275131.00ecdonaldp224crypto_sign/ecdonaldp224/opensslgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer (4.6.3)
25645951.00ecdonaldp256crypto_sign/ecdonaldp256/opensslgcc -funroll-loops -O3 -fomit-frame-pointer (4.6.3)
107394181.00ecdonaldp384crypto_sign/ecdonaldp384/opensslgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer (4.6.3)
81032971.00ecdonaldp521crypto_sign/ecdonaldp521/opensslgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3)
6150601.00ed25519crypto_sign/ed25519/amd64-64-24kgcc -fno-schedule-insns -O3 -fomit-frame-pointer (4.6.3)
8710681.42ed25519crypto_sign/ed25519/amd64-51-30kgcc -O2 -fomit-frame-pointer
19825713.22ed25519crypto_sign/ed25519/ref10gcc -funroll-loops -m64 -Os -fomit-frame-pointer
2517921640.94ed25519crypto_sign/ed25519/refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer
23522371.00ed448goldilockscrypto_sign/ed448goldilocks/amd64 (2014-10-12)clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer (4.2.1 Compatible Ubuntu Clang 3.0 (tags/RELEASE 30/final))
26036221.11ed448goldilockscrypto_sign/ed448goldilocks/64gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer
60210362.56ed448goldilockscrypto_sign/ed448goldilocks/arm32clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer (4.2.1 Compatible Ubuntu Clang 3.0 (tags/RELEASE 30/final))
71431413.04ed448goldilockscrypto_sign/ed448goldilocks/32clang -O3 -fomit-frame-pointer
ed448goldilockscrypto_sign/ed448goldilocks/neongcc -m64 -O3 -fomit-frame-pointer
fslwe25crypto_sign/fslwe25/refg++ -m64 -O3 -fomit-frame-pointer
fslwe37crypto_sign/fslwe37/refg++ -m64 -O3 -fomit-frame-pointer
fslwe47crypto_sign/fslwe47/refg++ -m64 -O3 -fomit-frame-pointer
fslwe69crypto_sign/fslwe69/refg++ -m64 -O3 -fomit-frame-pointer
hectorcrypto_sign/hector/refgcc -m64 -O3 -fomit-frame-pointer
lattisigns512crypto_sign/lattisigns512/avxgcc -m64 -O3 -fomit-frame-pointer
1242721.00mqqsig160crypto_sign/mqqsig160/ref (1.00)gcc -m64 -march=core2 -O -fomit-frame-pointer (4.6.3)
1765771.00mqqsig192crypto_sign/mqqsig192/ref (1.00)gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3)
2237821.00mqqsig224crypto_sign/mqqsig224/ref (1.00)gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer (4.6.3)
2606401.00mqqsig256crypto_sign/mqqsig256/ref (1.00)gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3)
27801151.00ntrumls401xcrypto_sign/ntrumls401x/ref (1.0)gcc -funroll-loops -m64 -O2 -fomit-frame-pointer (4.6.3)
19875901.00ntrumls439xcrypto_sign/ntrumls439x/ref (1.0)gcc -funroll-loops -m64 -O2 -fomit-frame-pointer (4.6.3)
50775991.00ntrumls593xcrypto_sign/ntrumls593x/ref (1.0)gcc -funroll-loops -m64 -O2 -fomit-frame-pointer (4.6.3)
42067861.00ntrumls743xcrypto_sign/ntrumls743x/ref (1.0)gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer (4.6.3)
22643431.00pass769crypto_sign/pass769/ref-karatsuba (1.0k)gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer (4.6.3)
38194651.00pass863crypto_sign/pass863/ref-karatsuba (1.0k)gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer (4.6.3)
20185651.00pflash1crypto_sign/pflash1/refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer (4.6.3)
rainbowcrypto_sign/rainbow/refg++ -m64 -O3 -fomit-frame-pointer
3682261.00rainbow5640crypto_sign/rainbow5640/refg++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer (4.6.3)
5282341.00rainbow6440crypto_sign/rainbow6440/refclang++ -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer (4.2.1 Compatible Ubuntu Clang 3.0 (tags/RELEASE 30/final))
2621071.00rainbowbinary16242020crypto_sign/rainbowbinary16242020/refg++ -m64 -march=core2 -O3 -fomit-frame-pointer (4.6.3)
1916551.00rainbowbinary256181212crypto_sign/rainbowbinary256181212/refg++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3)
23175841.00ronald1024crypto_sign/ronald1024/opensslgcc -funroll-loops -O3 -fomit-frame-pointer (4.6.3)
50333431.00ronald1536crypto_sign/ronald1536/opensslgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer (4.6.3)
95792431.00ronald2048crypto_sign/ronald2048/opensslgcc -funroll-loops -O3 -fomit-frame-pointer (4.6.3)
261586681.00ronald3072crypto_sign/ronald3072/opensslgcc -march=k8 -O -fomit-frame-pointer (4.6.3)
557811091.00ronald4096crypto_sign/ronald4096/opensslgcc -m64 -O3 -fomit-frame-pointer (4.6.3)
9526801.00ronald512crypto_sign/ronald512/opensslgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer (4.6.3)
15505771.00ronald768crypto_sign/ronald768/opensslclang -O3 -fwrapv -mavx2 -fomit-frame-pointer (4.2.1 Compatible Ubuntu Clang 3.0 (tags/RELEASE 30/final))
rwb0fuz1024crypto_sign/rwb0fuz1024/gmpgcc -m64 -O3 -fomit-frame-pointer
4767031.00sflashv2crypto_sign/sflashv2/refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer (4.6.3)
5446795021.00sphincs256crypto_sign/sphincs256/refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer (4.6.3)
sphincs256crypto_sign/sphincs256/avx2gcc -m64 -O3 -fomit-frame-pointer
2995591.00tts6440crypto_sign/tts6440/refclang++ -O3 -fwrapv -mavx2 -fomit-frame-pointer (4.2.1 Compatible Ubuntu Clang 3.0 (tags/RELEASE 30/final))