Implementation notes: amd64, h4e350, crypto_sign/pass769

Computer: h4e350
Architecture: amd64
CPU ID: AuthenticAMD-00500f10-178bfbff
SUPERCOP version: 20141014
Operation: crypto_sign
Primitive: pass769
TimeImplementationCompilerBenchmark dateSUPERCOP version
2264343ref-karatsubagcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014080820140622
2265606ref-karatsubagcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014080820140622
2306157ref-karatsubagcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014080820140622
2314494ref-karatsubagcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014080820140622
2315229ref-karatsubagcc -funroll-loops -O2 -fomit-frame-pointer2014080820140622
2315721ref-karatsubagcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014080820140622
2330808ref-karatsubagcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014080820140622
2374959ref-karatsubagcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014080820140622
2396481ref-karatsubagcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014080820140622
2426184ref-karatsubagcc -m64 -march=k8 -O2 -fomit-frame-pointer2014080820140622
2428191ref-karatsubagcc -march=k8 -O2 -fomit-frame-pointer2014080820140622
2450976ref-karatsubagcc -m64 -O2 -fomit-frame-pointer2014080820140622
2451504ref-karatsubagcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014080820140622
2453631ref-karatsubagcc -fno-schedule-insns -O2 -fomit-frame-pointer2014080820140622
2453895ref-karatsubagcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014080820140622
2454255ref-karatsubagcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014080820140622
2458227ref-karatsubagcc -O2 -fomit-frame-pointer2014080820140622
2460996ref-karatsubagcc -funroll-loops -O3 -fomit-frame-pointer2014080820140622
2461566ref-karatsubagcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014080820140622
2461677ref-karatsubagcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014080820140622
2464209ref-karatsubagcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014080820140622
2465295ref-karatsubagcc -funroll-loops -O -fomit-frame-pointer2014080820140622
2466093ref-karatsubagcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014080820140622
2469180ref-karatsubagcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014080820140622
2469738ref-karatsubagcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014080820140622
2473224ref-karatsubagcc -m64 -march=core2 -O2 -fomit-frame-pointer2014080820140622
2480754ref-karatsubagcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014080820140622
2483940ref-karatsubaclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014101920141014
2488344ref-karatsubagcc -funroll-loops -m64 -O -fomit-frame-pointer2014080820140622
2489397ref-karatsubaclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101920141014
2507358ref-karatsubaclang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014080820140622
2513355ref-karatsubaclang -O3 -fomit-frame-pointer2014080820140622
2515776ref-karatsubaclang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014080820140622
2522706ref-karatsubagcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014080820140622
2524167ref-karatsubagcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014080820140622
2526006ref-karatsubagcc -m64 -O3 -fomit-frame-pointer2014080820140622
2527536ref-karatsubagcc -O3 -fomit-frame-pointer2014080820140622
2529180ref-karatsubagcc -march=barcelona -O2 -fomit-frame-pointer2014080820140622
2534511ref-karatsubagcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014080820140622
2539557ref-karatsubagcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014080820140622
2544423ref-karatsubagcc -m64 -march=core2 -O3 -fomit-frame-pointer2014080820140622
2546424ref-karatsubagcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014080820140622
2550129ref-karatsubagcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014080820140622
2556054ref-karatsubagcc -march=nocona -O3 -fomit-frame-pointer2014080820140622
2557734ref-karatsubagcc -m64 -march=k8 -O3 -fomit-frame-pointer2014080820140622
2559414ref-karatsubagcc -march=k8 -O3 -fomit-frame-pointer2014080820140622
2563143ref-karatsubagcc -m64 -march=nocona -O3 -fomit-frame-pointer2014080820140622
2566716ref-karatsubagcc -m64 -march=barcelona -O -fomit-frame-pointer2014080820140622
2571339ref-karatsubagcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014080820140622
2572386ref-karatsubagcc -march=barcelona -O -fomit-frame-pointer2014080820140622
2573199ref-karatsubagcc -m64 -O -fomit-frame-pointer2014080820140622
2580093ref-karatsubagcc -O -fomit-frame-pointer2014080820140622
2581542ref-karatsubagcc -m64 -march=core2 -O -fomit-frame-pointer2014080820140622
2582856ref-karatsubagcc -m64 -march=corei7 -O -fomit-frame-pointer2014080820140622
2590635ref-karatsubagcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014080820140622
2592249ref-karatsubagcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014080820140622
2594064ref-karatsubagcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014080820140622
2596302ref-karatsubagcc -march=barcelona -O3 -fomit-frame-pointer2014080820140622
2597439ref-karatsubagcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014080820140622
2599929ref-karatsubagcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014080820140622
2601585ref-karatsubagcc -fno-schedule-insns -O -fomit-frame-pointer2014080820140622
2601717ref-karatsubagcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014080820140622
2606889ref-karatsubagcc -march=k8 -O -fomit-frame-pointer2014080820140622
2607099ref-karatsubagcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014080820140622
2610657ref-karatsubagcc -m64 -march=nocona -O -fomit-frame-pointer2014080820140622
2612337ref-karatsubagcc -march=nocona -O -fomit-frame-pointer2014080820140622
2620674ref-karatsubagcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014080820140622
2757288ref-karatsubagcc -fno-schedule-insns -O3 -fomit-frame-pointer2014080820140622
2767578ref-karatsubagcc -m64 -march=k8 -O -fomit-frame-pointer2014080820140622
2871807ref-karatsubagcc -m64 -march=nocona -O2 -fomit-frame-pointer2014080820140622
2878116ref-karatsubagcc -march=nocona -O2 -fomit-frame-pointer2014080820140622
3010551ref-karatsubagcc -march=nocona -Os -fomit-frame-pointer2014080820140622
3061518ref-karatsubagcc -m64 -Os -fomit-frame-pointer2014080820140622
3077664ref-karatsubagcc -march=barcelona -Os -fomit-frame-pointer2014080820140622
3080379ref-karatsubagcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014080820140622
3092508ref-karatsubagcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014080820140622
3096237ref-karatsubagcc -march=k8 -Os -fomit-frame-pointer2014080820140622
3098790ref-karatsubagcc -m64 -march=k8 -Os -fomit-frame-pointer2014080820140622
3099123ref-karatsubagcc -m64 -march=barcelona -Os -fomit-frame-pointer2014080820140622
3100401ref-karatsubagcc -fno-schedule-insns -Os -fomit-frame-pointer2014080820140622
3102327ref-karatsubagcc -m64 -march=corei7 -Os -fomit-frame-pointer2014080820140622
3110751ref-karatsubagcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014080820140622
3111720ref-karatsubagcc -m64 -march=core2 -Os -fomit-frame-pointer2014080820140622
3120183ref-karatsubagcc -Os -fomit-frame-pointer2014080820140622
3235332ref-karatsubagcc -m64 -march=nocona -Os -fomit-frame-pointer2014080820140622
3400197ref-karatsubagcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014080820140622
3400449ref-karatsubagcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014080820140622
3402246ref-karatsubagcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014080820140622
3402855ref-karatsubagcc -funroll-loops -m64 -Os -fomit-frame-pointer2014080820140622
3402912ref-karatsubagcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014080820140622
3403008ref-karatsubagcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014080820140622
3403734ref-karatsubagcc -funroll-loops -Os -fomit-frame-pointer2014080820140622
3408696ref-karatsubagcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014080820140622
3412638ref-karatsubagcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014080820140622
9572943ref-karatsubagcc2014080820140622
10953660ref-karatsubacc2014080820140622
11048493ref-karatsubagcc -funroll-loops2014080820140622

Compiler output

Implementation: crypto_sign/pass769/ref-karatsuba
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 ref-karatsuba

Compiler output

Implementation: crypto_sign/pass769/ref-karatsuba
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
bsparseconv.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
bsparseconv.c: clang: warning: argument unused during compilation: '-mavx2'
bsparseconv.c: clang: warning: argument unused during compilation: '-mpclmul'
fastrandombytes.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
fastrandombytes.c: clang: warning: argument unused during compilation: '-mavx2'
fastrandombytes.c: clang: warning: argument unused during compilation: '-mpclmul'
formatc.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
formatc.c: clang: warning: argument unused during compilation: '-mavx2'
formatc.c: clang: warning: argument unused during compilation: '-mpclmul'
hash.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
hash.c: clang: warning: argument unused during compilation: '-mavx2'
hash.c: clang: warning: argument unused during compilation: '-mpclmul'
ntt.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
ntt.c: clang: warning: argument unused during compilation: '-mavx2'
ntt.c: clang: warning: argument unused during compilation: '-mpclmul'
poly.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
poly.c: clang: warning: argument unused during compilation: '-mavx2'
poly.c: clang: warning: argument unused during compilation: '-mpclmul'
sign.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
sign.c: clang: warning: argument unused during compilation: '-mavx2'
sign.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 ref-karatsuba

Compiler output

Implementation: crypto_sign/pass769/ref-karatsuba
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
bsparseconv.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
bsparseconv.c: clang: warning: argument unused during compilation: '-mavx2'
bsparseconv.c: clang: warning: argument unused during compilation: '-mpclmul'
bsparseconv.c: clang: warning: argument unused during compilation: '-fpolly'
bsparseconv.c: clang: warning: argument unused during compilation: '-fvectorize'
bsparseconv.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
bsparseconv.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
fastrandombytes.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
fastrandombytes.c: clang: warning: argument unused during compilation: '-mavx2'
fastrandombytes.c: clang: warning: argument unused during compilation: '-mpclmul'
fastrandombytes.c: clang: warning: argument unused during compilation: '-fpolly'
fastrandombytes.c: clang: warning: argument unused during compilation: '-fvectorize'
fastrandombytes.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
fastrandombytes.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
formatc.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
formatc.c: clang: warning: argument unused during compilation: '-mavx2'
formatc.c: clang: warning: argument unused during compilation: '-mpclmul'
formatc.c: clang: warning: argument unused during compilation: '-fpolly'
formatc.c: clang: warning: argument unused during compilation: '-fvectorize'
formatc.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
formatc.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
hash.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
hash.c: clang: warning: argument unused during compilation: '-mavx2'
hash.c: clang: warning: argument unused during compilation: '-mpclmul'
hash.c: clang: warning: argument unused during compilation: '-fpolly'
hash.c: clang: warning: argument unused during compilation: '-fvectorize'
hash.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
hash.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
ntt.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
ntt.c: clang: warning: argument unused during compilation: '-mavx2'
ntt.c: clang: warning: argument unused during compilation: '-mpclmul'
ntt.c: clang: warning: argument unused during compilation: '-fpolly'
ntt.c: clang: warning: argument unused during compilation: '-fvectorize'
ntt.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
ntt.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
poly.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
poly.c: clang: warning: argument unused during compilation: '-mavx2'
poly.c: clang: warning: argument unused during compilation: '-mpclmul'
poly.c: clang: warning: argument unused during compilation: '-fpolly'
poly.c: clang: warning: argument unused during compilation: '-fvectorize'
poly.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
poly.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
sign.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
sign.c: clang: warning: argument unused during compilation: '-mavx2'
sign.c: clang: warning: argument unused during compilation: '-mpclmul'
sign.c: clang: warning: argument unused during compilation: '-fpolly'
sign.c: clang: warning: argument unused during compilation: '-fvectorize'
sign.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
sign.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 ref-karatsuba

Compiler output

Implementation: crypto_sign/pass769/ref-karatsuba
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer
bsparseconv.c: clang: warning: argument unused during compilation: '-mavx2'
fastrandombytes.c: clang: warning: argument unused during compilation: '-mavx2'
formatc.c: clang: warning: argument unused during compilation: '-mavx2'
hash.c: clang: warning: argument unused during compilation: '-mavx2'
ntt.c: clang: warning: argument unused during compilation: '-mavx2'
poly.c: clang: warning: argument unused during compilation: '-mavx2'
sign.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 ref-karatsuba

Compiler output

Implementation: crypto_sign/pass769/ref-karatsuba
Compiler: clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
bsparseconv.c: clang: warning: argument unused during compilation: '-mavx2'
bsparseconv.c: clang: warning: argument unused during compilation: '-fpolly'
bsparseconv.c: clang: warning: argument unused during compilation: '-fvectorize'
bsparseconv.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
bsparseconv.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
fastrandombytes.c: clang: warning: argument unused during compilation: '-mavx2'
fastrandombytes.c: clang: warning: argument unused during compilation: '-fpolly'
fastrandombytes.c: clang: warning: argument unused during compilation: '-fvectorize'
fastrandombytes.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
fastrandombytes.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
formatc.c: clang: warning: argument unused during compilation: '-mavx2'
formatc.c: clang: warning: argument unused during compilation: '-fpolly'
formatc.c: clang: warning: argument unused during compilation: '-fvectorize'
formatc.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
formatc.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
hash.c: clang: warning: argument unused during compilation: '-mavx2'
hash.c: clang: warning: argument unused during compilation: '-fpolly'
hash.c: clang: warning: argument unused during compilation: '-fvectorize'
hash.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
hash.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
ntt.c: clang: warning: argument unused during compilation: '-mavx2'
ntt.c: clang: warning: argument unused during compilation: '-fpolly'
ntt.c: clang: warning: argument unused during compilation: '-fvectorize'
ntt.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
ntt.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
poly.c: clang: warning: argument unused during compilation: '-mavx2'
poly.c: clang: warning: argument unused during compilation: '-fpolly'
poly.c: clang: warning: argument unused during compilation: '-fvectorize'
poly.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
poly.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
sign.c: clang: warning: argument unused during compilation: '-mavx2'
sign.c: clang: warning: argument unused during compilation: '-fpolly'
sign.c: clang: warning: argument unused during compilation: '-fvectorize'
sign.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
sign.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 ref-karatsuba