Implementation notes: amd64, h5nano, crypto_sign/ntrumls593x

Computer: h5nano
Architecture: amd64
CPU ID: CentaurHauls-000006f8-afc9fbff
SUPERCOP version: 20141014
Operation: crypto_sign
Primitive: ntrumls593x
TimeImplementationCompilerBenchmark dateSUPERCOP version
5315520refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014082520140622
5318335refgcc -funroll-loops -O3 -fomit-frame-pointer2014082520140622
5319125refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014082520140622
5322820refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014082520140622
5323900refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014082520140622
5378920refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014082520140622
5395180refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014082520140622
5397825refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014082520140622
5407395refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014082520140622
5411465refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014082520140622
5418055refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014082520140622
5419870refgcc -funroll-loops -O2 -fomit-frame-pointer2014082520140622
5422140refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014082520140622
5430515refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014082520140622
5934060refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2014082520140622
5936995refgcc -march=nocona -O3 -fomit-frame-pointer2014082520140622
5976170refgcc -march=barcelona -O2 -fomit-frame-pointer2014082520140622
5984665refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014082520140622
6010180refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2014082520140622
6010800refgcc -march=k8 -O2 -fomit-frame-pointer2014082520140622
6030695refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014082520140622
6036165refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014082520140622
6062735refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014082520140622
6063725refclang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014082520140622
6066470refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014082520140622
6066710refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014082520140622
6068015refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014102020141014
6070370refclang -O3 -fomit-frame-pointer2014082520140622
6075775refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2014082520140622
6078390refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014102020141014
6084785refgcc -march=nocona -O2 -fomit-frame-pointer2014082520140622
6089265refgcc -O3 -fomit-frame-pointer2014082520140622
6240555refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2014082520140622
6354280refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2014082520140622
6364625refgcc -march=k8 -O3 -fomit-frame-pointer2014082520140622
6404680refgcc -march=barcelona -O3 -fomit-frame-pointer2014082520140622
6407670refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2014082520140622
6408410refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2014082520140622
6408455refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014082520140622
6409010refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014082520140622
6410595refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014082520140622
6417270refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014082520140622
6420790refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014082520140622
6424940refgcc -m64 -O3 -fomit-frame-pointer2014082520140622
6431680refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014082520140622
6432355refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014082520140622
6445300refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014082520140622
6446300refgcc -funroll-loops -O -fomit-frame-pointer2014082520140622
6447520refgcc -funroll-loops -m64 -O -fomit-frame-pointer2014082520140622
6485280refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014082520140622
6486830refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014082520140622
6487870refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014082520140622
6496090refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014082520140622
6558450refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014082520140622
6561300refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014082520140622
6562145refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014082520140622
6563880refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014082520140622
6563965refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014082520140622
6565530refgcc -m64 -O2 -fomit-frame-pointer2014082520140622
6567205refgcc -O2 -fomit-frame-pointer2014082520140622
6710740refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014082520140622
6710870refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014082520140622
6711625refgcc -fno-schedule-insns -O -fomit-frame-pointer2014082520140622
6713105refgcc -m64 -march=corei7 -O -fomit-frame-pointer2014082520140622
6713835refgcc -m64 -march=core2 -O -fomit-frame-pointer2014082520140622
6715180refgcc -m64 -O -fomit-frame-pointer2014082520140622
6716460refgcc -O -fomit-frame-pointer2014082520140622
6717380refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014082520140622
6742310refgcc -march=barcelona -O -fomit-frame-pointer2014082520140622
6743750refgcc -m64 -march=k8 -O -fomit-frame-pointer2014082520140622
6747700refgcc -march=k8 -O -fomit-frame-pointer2014082520140622
6748720refgcc -m64 -march=barcelona -O -fomit-frame-pointer2014082520140622
6810820refgcc -march=nocona -O -fomit-frame-pointer2014082520140622
6815365refgcc -m64 -march=nocona -O -fomit-frame-pointer2014082520140622
7367885refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2014082520140622
7369870refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014082520140622
7370580refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014082520140622
7372180refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014082520140622
7372465refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014082520140622
7373085refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014082520140622
7373900refgcc -funroll-loops -Os -fomit-frame-pointer2014082520140622
7373985refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014082520140622
7376355refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014082520140622
8050190refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014082520140622
8050385refgcc -march=barcelona -Os -fomit-frame-pointer2014082520140622
8050875refgcc -march=nocona -Os -fomit-frame-pointer2014082520140622
8051770refgcc -m64 -march=nocona -Os -fomit-frame-pointer2014082520140622
8051825refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2014082520140622
8051850refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014082520140622
8052015refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014082520140622
8053530refgcc -m64 -Os -fomit-frame-pointer2014082520140622
8054305refgcc -march=k8 -Os -fomit-frame-pointer2014082520140622
8054385refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014082520140622
8055425refgcc -Os -fomit-frame-pointer2014082520140622
8055810refgcc -m64 -march=k8 -Os -fomit-frame-pointer2014082520140622
8056310refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014082520140622
8058545refgcc -m64 -march=core2 -Os -fomit-frame-pointer2014082520140622
20765145refgcc -funroll-loops2014082520140622
20774935refcc2014082520140622
20777230refgcc2014082520140622

Compiler output

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