Implementation notes: amd64, h4e350, crypto_sign/ntrumls439x

Computer: h4e350
Architecture: amd64
CPU ID: AuthenticAMD-00500f10-178bfbff
SUPERCOP version: 20141014
Operation: crypto_sign
Primitive: ntrumls439x
TimeImplementationCompilerBenchmark dateSUPERCOP version
1987590refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014080820140622
1989312refgcc -funroll-loops -O2 -fomit-frame-pointer2014080820140622
1989576refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014080820140622
1991676refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014080820140622
1995507refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014080820140622
1996977refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014080820140622
2000247refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014080820140622
2000256refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014080820140622
2001576refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014080820140622
2011410refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014080820140622
2013258refgcc -funroll-loops -O3 -fomit-frame-pointer2014080820140622
2014449refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014080820140622
2042484refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014080820140622
2044845refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014080820140622
2142033refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014080820140622
2143929refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014080820140622
2145261refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014080820140622
2151072refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014080820140622
2162907refclang -O3 -fomit-frame-pointer2014080820140622
2164599refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014080820140622
2165349refclang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014080820140622
2166456refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014101920141014
2166840refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101920141014
2170548refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014080820140622
2170830refgcc -march=barcelona -O3 -fomit-frame-pointer2014080820140622
2172531refgcc -march=k8 -O3 -fomit-frame-pointer2014080820140622
2173383refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014080820140622
2174328refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2014080820140622
2208918refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014080820140622
2211717refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014080820140622
2211852refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014080820140622
2213979refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014080820140622
2219388refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014080820140622
2223183refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014080820140622
2225850refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2014080820140622
2227008refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014080820140622
2227152refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014080820140622
2228118refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014080820140622
2239080refgcc -funroll-loops -m64 -O -fomit-frame-pointer2014080820140622
2240865refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014080820140622
2241411refgcc -O2 -fomit-frame-pointer2014080820140622
2241417refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014080820140622
2241576refgcc -m64 -O2 -fomit-frame-pointer2014080820140622
2242857refgcc -funroll-loops -O -fomit-frame-pointer2014080820140622
2292387refgcc -m64 -march=nocona -O -fomit-frame-pointer2014080820140622
2293596refgcc -march=nocona -O -fomit-frame-pointer2014080820140622
2300565refgcc -march=nocona -O3 -fomit-frame-pointer2014080820140622
2301915refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2014080820140622
2303772refgcc -march=barcelona -O2 -fomit-frame-pointer2014080820140622
2306031refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014080820140622
2309379refgcc -fno-schedule-insns -O -fomit-frame-pointer2014080820140622
2309757refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2014080820140622
2309928refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014080820140622
2310117refgcc -O3 -fomit-frame-pointer2014080820140622
2310306refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014080820140622
2310867refgcc -m64 -march=corei7 -O -fomit-frame-pointer2014080820140622
2311002refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014080820140622
2311128refgcc -m64 -O3 -fomit-frame-pointer2014080820140622
2311821refgcc -m64 -O -fomit-frame-pointer2014080820140622
2313537refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014080820140622
2314047refgcc -O -fomit-frame-pointer2014080820140622
2314179refgcc -m64 -march=core2 -O -fomit-frame-pointer2014080820140622
2315127refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2014080820140622
2317788refgcc -march=nocona -O2 -fomit-frame-pointer2014080820140622
2329497refgcc -march=barcelona -O -fomit-frame-pointer2014080820140622
2331072refgcc -m64 -march=barcelona -O -fomit-frame-pointer2014080820140622
2331390refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014080820140622
2347011refgcc -m64 -march=k8 -O -fomit-frame-pointer2014080820140622
2349165refgcc -march=k8 -O -fomit-frame-pointer2014080820140622
2381769refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2014080820140622
2383842refgcc -march=k8 -O2 -fomit-frame-pointer2014080820140622
2579016refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014080820140622
2579598refgcc -Os -fomit-frame-pointer2014080820140622
2580261refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2014080820140622
2580360refgcc -m64 -march=core2 -Os -fomit-frame-pointer2014080820140622
2581650refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014080820140622
2581809refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014080820140622
2582067refgcc -m64 -march=k8 -Os -fomit-frame-pointer2014080820140622
2582355refgcc -march=barcelona -Os -fomit-frame-pointer2014080820140622
2582805refgcc -m64 -Os -fomit-frame-pointer2014080820140622
2585298refgcc -march=k8 -Os -fomit-frame-pointer2014080820140622
2585742refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014080820140622
2596500refgcc -m64 -march=nocona -Os -fomit-frame-pointer2014080820140622
2597688refgcc -march=nocona -Os -fomit-frame-pointer2014080820140622
2671362refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014080820140622
2691810refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014080820140622
2692239refgcc -funroll-loops -Os -fomit-frame-pointer2014080820140622
2692791refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014080820140622
2692911refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014080820140622
2693112refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014080820140622
2693280refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014080820140622
2693685refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014080820140622
2694261refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014080820140622
2696679refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2014080820140622
7562388refcc2014080820140622
7567821refgcc -funroll-loops2014080820140622
7597488refgcc2014080820140622

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