Implementation notes: amd64, h4e350, crypto_sign/ecdonaldp160

Computer: h4e350
Architecture: amd64
CPU ID: AuthenticAMD-00500f10-178bfbff
SUPERCOP version: 20141014
Operation: crypto_sign
Primitive: ecdonaldp160
TimeImplementationCompilerBenchmark dateSUPERCOP version
3101949opensslgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014080620140622
3102945opensslclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014101920141014
3105681opensslgcc -march=k8 -O3 -fomit-frame-pointer2014080620140622
3106218opensslgcc -m64 -march=nocona -O2 -fomit-frame-pointer2014080620140622
3107067opensslclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101920141014
3108855opensslgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014080620140622
3108984opensslgcc -funroll-loops -O2 -fomit-frame-pointer2014080620140622
3109143opensslgcc -O2 -fomit-frame-pointer2014080620140622
3109350opensslgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014080620140622
3109671opensslgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014080620140622
3110157opensslgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014080620140622
3110337opensslgcc -m64 -march=core2 -O3 -fomit-frame-pointer2014080620140622
3110529opensslgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014080620140622
3110628opensslgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014080620140622
3110967opensslgcc -funroll-loops -O -fomit-frame-pointer2014080620140622
3111012opensslclang -O3 -fomit-frame-pointer2014080620140622
3111579opensslgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014080620140622
3111885opensslgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014080620140622
3111993opensslgcc -m64 -march=barcelona -O -fomit-frame-pointer2014080620140622
3112251opensslgcc -m64 -Os -fomit-frame-pointer2014080620140622
3112467opensslgcc -march=k8 -O2 -fomit-frame-pointer2014080620140622
3112665opensslgcc -m64 -march=corei7 -O -fomit-frame-pointer2014080620140622
3113742opensslgcc -m64 -march=k8 -O -fomit-frame-pointer2014080620140622
3114009opensslgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014080620140622
3114228opensslclang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014080620140622
3114309opensslgcc -march=nocona -Os -fomit-frame-pointer2014080620140622
3114393opensslgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014080620140622
3114570opensslgcc -march=barcelona -O3 -fomit-frame-pointer2014080620140622
3114639opensslgcc -funroll-loops -m64 -O -fomit-frame-pointer2014080620140622
3115041opensslclang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014080620140622
3115173opensslgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014080620140622
3115272opensslgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014080620140622
3115320opensslgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014080620140622
3115434opensslgcc -march=nocona -O -fomit-frame-pointer2014080620140622
3115548opensslgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014080620140622
3115590opensslgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014080620140622
3115602opensslgcc -march=k8 -Os -fomit-frame-pointer2014080620140622
3115800opensslgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014080620140622
3115815opensslgcc -march=barcelona -O -fomit-frame-pointer2014080620140622
3115917opensslgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014080620140622
3115929opensslgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014080620140622
3115965opensslgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014080620140622
3116223opensslgcc -march=barcelona -O2 -fomit-frame-pointer2014080620140622
3116304opensslgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014080620140622
3116745opensslgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014080620140622
3116805opensslgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014080620140622
3116805opensslgcc -march=nocona -O3 -fomit-frame-pointer2014080620140622
3116877opensslgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014080620140622
3116901opensslgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014080620140622
3117474opensslgcc -m64 -march=core2 -Os -fomit-frame-pointer2014080620140622
3117540opensslgcc -m64 -march=core2 -O2 -fomit-frame-pointer2014080620140622
3117618opensslgcc -m64 -march=nocona -Os -fomit-frame-pointer2014080620140622
3117828opensslgcc -Os -fomit-frame-pointer2014080620140622
3117996opensslgcc -m64 -march=corei7 -Os -fomit-frame-pointer2014080620140622
3118089opensslgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014080620140622
3118635opensslgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014080620140622
3118854opensslgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014080620140622
3119472opensslgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014080620140622
3119493opensslgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014080620140622
3119511opensslgcc -m64 -march=k8 -O2 -fomit-frame-pointer2014080620140622
3119721opensslgcc -m64 -O -fomit-frame-pointer2014080620140622
3119769opensslgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014080620140622
3120144opensslgcc -m64 -march=core2 -O -fomit-frame-pointer2014080620140622
3120264opensslgcc -fno-schedule-insns -O -fomit-frame-pointer2014080620140622
3120357opensslgcc -funroll-loops -O3 -fomit-frame-pointer2014080620140622
3120678opensslgcc -m64 -march=k8 -Os -fomit-frame-pointer2014080620140622
3120879opensslgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014080620140622
3121179opensslgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014080620140622
3121203opensslgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014080620140622
3121251opensslgcc -fno-schedule-insns -Os -fomit-frame-pointer2014080620140622
3121329opensslgcc -march=nocona -O2 -fomit-frame-pointer2014080620140622
3121497opensslgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014080620140622
3121572opensslgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014080620140622
3121614opensslgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014080620140622
3121650opensslgcc -march=k8 -O -fomit-frame-pointer2014080620140622
3121977opensslgcc -m64 -march=nocona -O -fomit-frame-pointer2014080620140622
3122301opensslgcc -m64 -march=k8 -O3 -fomit-frame-pointer2014080620140622
3122979opensslgcc -m64 -march=nocona -O3 -fomit-frame-pointer2014080620140622
3123657opensslgcc -m64 -O3 -fomit-frame-pointer2014080620140622
3123690opensslgcc -O -fomit-frame-pointer2014080620140622
3124092opensslgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014080620140622
3125301opensslgcc -O3 -fomit-frame-pointer2014080620140622
3126012opensslgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014080620140622
3126105opensslgcc -m64 -O2 -fomit-frame-pointer2014080620140622
3126546opensslgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014080620140622
3126675opensslgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014080620140622
3126750opensslgcc -march=barcelona -Os -fomit-frame-pointer2014080620140622
3128412opensslgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014080620140622
3129393opensslgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014080620140622
3129807opensslgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014080620140622
3130161opensslgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014080620140622
3133515opensslgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014080620140622
3134280opensslgcc -funroll-loops -Os -fomit-frame-pointer2014080620140622
3138594opensslgcc2014080620140622
3143004opensslgcc -funroll-loops -m64 -Os -fomit-frame-pointer2014080620140622
3149103opensslgcc -funroll-loops2014080620140622
3154263opensslcc2014080620140622

Compiler output

Implementation: crypto_sign/ecdonaldp160/openssl
Compiler: clang -O3 -fomit-frame-pointer
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer openssl

Compiler output

Implementation: crypto_sign/ecdonaldp160/openssl
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
keypair.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
keypair.c: clang: warning: argument unused during compilation: '-mavx2'
keypair.c: clang: warning: argument unused during compilation: '-mpclmul'
signatureofshorthash.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
signatureofshorthash.c: clang: warning: argument unused during compilation: '-mavx2'
signatureofshorthash.c: clang: warning: argument unused during compilation: '-mpclmul'
usehash.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
usehash.c: clang: warning: argument unused during compilation: '-mavx2'
usehash.c: clang: warning: argument unused during compilation: '-mpclmul'
verification.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
verification.c: clang: warning: argument unused during compilation: '-mavx2'
verification.c: clang: warning: argument unused during compilation: '-mpclmul'
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer openssl

Compiler output

Implementation: crypto_sign/ecdonaldp160/openssl
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
keypair.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
keypair.c: clang: warning: argument unused during compilation: '-mavx2'
keypair.c: clang: warning: argument unused during compilation: '-mpclmul'
keypair.c: clang: warning: argument unused during compilation: '-fpolly'
keypair.c: clang: warning: argument unused during compilation: '-fvectorize'
keypair.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
keypair.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
signatureofshorthash.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
signatureofshorthash.c: clang: warning: argument unused during compilation: '-mavx2'
signatureofshorthash.c: clang: warning: argument unused during compilation: '-mpclmul'
signatureofshorthash.c: clang: warning: argument unused during compilation: '-fpolly'
signatureofshorthash.c: clang: warning: argument unused during compilation: '-fvectorize'
signatureofshorthash.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
signatureofshorthash.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
usehash.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
usehash.c: clang: warning: argument unused during compilation: '-mavx2'
usehash.c: clang: warning: argument unused during compilation: '-mpclmul'
usehash.c: clang: warning: argument unused during compilation: '-fpolly'
usehash.c: clang: warning: argument unused during compilation: '-fvectorize'
usehash.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
usehash.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
verification.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
verification.c: clang: warning: argument unused during compilation: '-mavx2'
verification.c: clang: warning: argument unused during compilation: '-mpclmul'
verification.c: clang: warning: argument unused during compilation: '-fpolly'
verification.c: clang: warning: argument unused during compilation: '-fvectorize'
verification.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
verification.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer openssl

Compiler output

Implementation: crypto_sign/ecdonaldp160/openssl
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer
keypair.c: clang: warning: argument unused during compilation: '-mavx2'
signatureofshorthash.c: clang: warning: argument unused during compilation: '-mavx2'
usehash.c: clang: warning: argument unused during compilation: '-mavx2'
verification.c: clang: warning: argument unused during compilation: '-mavx2'
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer openssl

Compiler output

Implementation: crypto_sign/ecdonaldp160/openssl
Compiler: clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
keypair.c: clang: warning: argument unused during compilation: '-mavx2'
keypair.c: clang: warning: argument unused during compilation: '-fpolly'
keypair.c: clang: warning: argument unused during compilation: '-fvectorize'
keypair.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
keypair.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
signatureofshorthash.c: clang: warning: argument unused during compilation: '-mavx2'
signatureofshorthash.c: clang: warning: argument unused during compilation: '-fpolly'
signatureofshorthash.c: clang: warning: argument unused during compilation: '-fvectorize'
signatureofshorthash.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
signatureofshorthash.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
usehash.c: clang: warning: argument unused during compilation: '-mavx2'
usehash.c: clang: warning: argument unused during compilation: '-fpolly'
usehash.c: clang: warning: argument unused during compilation: '-fvectorize'
usehash.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
usehash.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
verification.c: clang: warning: argument unused during compilation: '-mavx2'
verification.c: clang: warning: argument unused during compilation: '-fpolly'
verification.c: clang: warning: argument unused during compilation: '-fvectorize'
verification.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
verification.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer openssl