Implementation notes: amd64, h5nano, crypto_sign/ntrumls439x

Computer: h5nano
Architecture: amd64
CPU ID: CentaurHauls-000006f8-afc9fbff
SUPERCOP version: 20141014
Operation: crypto_sign
Primitive: ntrumls439x
TimeImplementationCompilerBenchmark dateSUPERCOP version
2230955refgcc -funroll-loops -O3 -fomit-frame-pointer2014082520140622
2234325refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014082520140622
2234340refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014082520140622
2238195refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014082520140622
2238940refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014082520140622
2266235refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014082520140622
2269235refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014082520140622
2269745refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014082520140622
2272795refgcc -funroll-loops -O2 -fomit-frame-pointer2014082520140622
2276805refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014082520140622
2288480refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014082520140622
2291215refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014082520140622
2306380refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014082520140622
2320035refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014082520140622
2364410refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2014082520140622
2370000refgcc -march=nocona -O3 -fomit-frame-pointer2014082520140622
2401340refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014082520140622
2401710refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2014082520140622
2403330refgcc -march=k8 -O2 -fomit-frame-pointer2014082520140622
2415265refclang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014082520140622
2415535refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014082520140622
2416080refclang -O3 -fomit-frame-pointer2014082520140622
2416605refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014102020141014
2418680refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014102020141014
2422735refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2014082520140622
2428800refgcc -march=nocona -O2 -fomit-frame-pointer2014082520140622
2499220refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014082520140622
2515845refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014082520140622
2515900refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014082520140622
2516485refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014082520140622
2517225refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2014082520140622
2517500refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014082520140622
2519395refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014082520140622
2520515refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2014082520140622
2520670refgcc -m64 -O3 -fomit-frame-pointer2014082520140622
2521330refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014082520140622
2521340refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014082520140622
2521415refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014082520140622
2523795refgcc -O3 -fomit-frame-pointer2014082520140622
2524665refgcc -funroll-loops -O -fomit-frame-pointer2014082520140622
2528075refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014082520140622
2555425refgcc -march=barcelona -O2 -fomit-frame-pointer2014082520140622
2576660refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014082520140622
2578795refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014082520140622
2581320refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014082520140622
2581345refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014082520140622
2581940refgcc -funroll-loops -m64 -O -fomit-frame-pointer2014082520140622
2583525refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2014082520140622
2597735refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014082520140622
2615835refgcc -march=barcelona -O3 -fomit-frame-pointer2014082520140622
2620100refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014082520140622
2621095refgcc -march=k8 -O3 -fomit-frame-pointer2014082520140622
2621755refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2014082520140622
2641630refgcc -m64 -march=core2 -O -fomit-frame-pointer2014082520140622
2643530refgcc -O -fomit-frame-pointer2014082520140622
2644115refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014082520140622
2644635refgcc -m64 -O -fomit-frame-pointer2014082520140622
2645235refgcc -m64 -march=corei7 -O -fomit-frame-pointer2014082520140622
2648680refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014082520140622
2661230refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014082520140622
2671855refgcc -march=k8 -O -fomit-frame-pointer2014082520140622
2672505refgcc -march=barcelona -O -fomit-frame-pointer2014082520140622
2675840refgcc -m64 -march=barcelona -O -fomit-frame-pointer2014082520140622
2699045refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014082520140622
2701400refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014082520140622
2701975refgcc -march=nocona -O -fomit-frame-pointer2014082520140622
2702600refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014082520140622
2708065refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014082520140622
2726645refgcc -O2 -fomit-frame-pointer2014082520140622
2736340refgcc -m64 -O2 -fomit-frame-pointer2014082520140622
2789960refgcc -fno-schedule-insns -O -fomit-frame-pointer2014082520140622
2798640refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014082520140622
2827360refgcc -m64 -march=k8 -O -fomit-frame-pointer2014082520140622
2851290refgcc -m64 -march=nocona -O -fomit-frame-pointer2014082520140622
3201955refgcc -funroll-loops -Os -fomit-frame-pointer2014082520140622
3202265refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014082520140622
3202835refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014082520140622
3202860refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014082520140622
3203585refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014082520140622
3207195refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2014082520140622
3212095refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014082520140622
3220540refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014082520140622
3225110refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014082520140622
3421340refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014082520140622
3422415refgcc -m64 -march=k8 -Os -fomit-frame-pointer2014082520140622
3425030refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014082520140622
3425845refgcc -m64 -march=nocona -Os -fomit-frame-pointer2014082520140622
3426250refgcc -m64 -Os -fomit-frame-pointer2014082520140622
3427345refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014082520140622
3427480refgcc -march=nocona -Os -fomit-frame-pointer2014082520140622
3429335refgcc -march=barcelona -Os -fomit-frame-pointer2014082520140622
3429895refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2014082520140622
3430005refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014082520140622
3431515refgcc -Os -fomit-frame-pointer2014082520140622
3433750refgcc -m64 -march=core2 -Os -fomit-frame-pointer2014082520140622
3445770refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014082520140622
3447575refgcc -march=k8 -Os -fomit-frame-pointer2014082520140622
7605225refgcc -funroll-loops2014082520140622
7605880refgcc2014082520140622
7607385refcc2014082520140622

Compiler output

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

Compiler output

Implementation: crypto_sign/ntrumls439x/ref
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
convert.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
convert.c: clang: warning: argument unused during compilation: '-mavx2'
convert.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'
pack.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
pack.c: clang: warning: argument unused during compilation: '-mavx2'
pack.c: clang: warning: argument unused during compilation: '-mpclmul'
params.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
params.c: clang: warning: argument unused during compilation: '-mavx2'
params.c: clang: warning: argument unused during compilation: '-mpclmul'
pol.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
pol.c: clang: warning: argument unused during compilation: '-mavx2'
pol.c: clang: warning: argument unused during compilation: '-mpclmul'
pqntrusign.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
pqntrusign.c: clang: warning: argument unused during compilation: '-mavx2'
pqntrusign.c: clang: warning: argument unused during compilation: '-mpclmul'
shred.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
shred.c: clang: warning: argument unused during compilation: '-mavx2'
shred.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

Compiler output

Implementation: crypto_sign/ntrumls439x/ref
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
convert.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
convert.c: clang: warning: argument unused during compilation: '-mavx2'
convert.c: clang: warning: argument unused during compilation: '-mpclmul'
convert.c: clang: warning: argument unused during compilation: '-fpolly'
convert.c: clang: warning: argument unused during compilation: '-fvectorize'
convert.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
convert.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'
pack.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
pack.c: clang: warning: argument unused during compilation: '-mavx2'
pack.c: clang: warning: argument unused during compilation: '-mpclmul'
pack.c: clang: warning: argument unused during compilation: '-fpolly'
pack.c: clang: warning: argument unused during compilation: '-fvectorize'
pack.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
pack.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
params.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
params.c: clang: warning: argument unused during compilation: '-mavx2'
params.c: clang: warning: argument unused during compilation: '-mpclmul'
params.c: clang: warning: argument unused during compilation: '-fpolly'
params.c: clang: warning: argument unused during compilation: '-fvectorize'
params.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
params.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
pol.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
pol.c: clang: warning: argument unused during compilation: '-mavx2'
pol.c: clang: warning: argument unused during compilation: '-mpclmul'
pol.c: clang: warning: argument unused during compilation: '-fpolly'
pol.c: clang: warning: argument unused during compilation: '-fvectorize'
pol.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
pol.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
pqntrusign.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
pqntrusign.c: clang: warning: argument unused during compilation: '-mavx2'
pqntrusign.c: clang: warning: argument unused during compilation: '-mpclmul'
pqntrusign.c: clang: warning: argument unused during compilation: '-fpolly'
pqntrusign.c: clang: warning: argument unused during compilation: '-fvectorize'
pqntrusign.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
pqntrusign.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
shred.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
shred.c: clang: warning: argument unused during compilation: '-mavx2'
shred.c: clang: warning: argument unused during compilation: '-mpclmul'
shred.c: clang: warning: argument unused during compilation: '-fpolly'
shred.c: clang: warning: argument unused during compilation: '-fvectorize'
shred.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
shred.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

Compiler output

Implementation: crypto_sign/ntrumls439x/ref
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer
convert.c: clang: warning: argument unused during compilation: '-mavx2'
fastrandombytes.c: clang: warning: argument unused during compilation: '-mavx2'
pack.c: clang: warning: argument unused during compilation: '-mavx2'
params.c: clang: warning: argument unused during compilation: '-mavx2'
pol.c: clang: warning: argument unused during compilation: '-mavx2'
pqntrusign.c: clang: warning: argument unused during compilation: '-mavx2'
shred.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

Compiler output

Implementation: crypto_sign/ntrumls439x/ref
Compiler: clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
convert.c: clang: warning: argument unused during compilation: '-mavx2'
convert.c: clang: warning: argument unused during compilation: '-fpolly'
convert.c: clang: warning: argument unused during compilation: '-fvectorize'
convert.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
convert.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'
pack.c: clang: warning: argument unused during compilation: '-mavx2'
pack.c: clang: warning: argument unused during compilation: '-fpolly'
pack.c: clang: warning: argument unused during compilation: '-fvectorize'
pack.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
pack.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
params.c: clang: warning: argument unused during compilation: '-mavx2'
params.c: clang: warning: argument unused during compilation: '-fpolly'
params.c: clang: warning: argument unused during compilation: '-fvectorize'
params.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
params.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
pol.c: clang: warning: argument unused during compilation: '-mavx2'
pol.c: clang: warning: argument unused during compilation: '-fpolly'
pol.c: clang: warning: argument unused during compilation: '-fvectorize'
pol.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
pol.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
pqntrusign.c: clang: warning: argument unused during compilation: '-mavx2'
pqntrusign.c: clang: warning: argument unused during compilation: '-fpolly'
pqntrusign.c: clang: warning: argument unused during compilation: '-fvectorize'
pqntrusign.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
pqntrusign.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
shred.c: clang: warning: argument unused during compilation: '-mavx2'
shred.c: clang: warning: argument unused during compilation: '-fpolly'
shred.c: clang: warning: argument unused during compilation: '-fvectorize'
shred.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
shred.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