Implementation notes: amd64, hydra2, crypto_sign/mqqsig160

Computer: hydra2
Architecture: amd64
CPU ID: GenuineIntel-000206c2-bfebfbff
SUPERCOP version: 20141014
Operation: crypto_sign
Primitive: mqqsig160
TimeImplementationCompilerBenchmark dateSUPERCOP version
116512refclang -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014072320140622
116600refclang -O3 -fwrapv -march=native -fomit-frame-pointer2014072320140622
122056refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014072320140622
122064refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014072320140622
122420refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014072320140622
122504refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2014072320140622
123256refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014072320140622
123308refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014072320140622
123424refgcc -m64 -march=core2 -Os -fomit-frame-pointer2014072320140622
123432refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014072320140622
123924refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014072320140622
123956refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2014072320140622
125836refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014072320140622
125864refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014072320140622
126008refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014072320140622
126064refgcc -m64 -march=core2 -O -fomit-frame-pointer2014072320140622
126180refgcc -m64 -march=corei7 -O -fomit-frame-pointer2014072320140622
127036refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014072320140622
127068refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014072320140622
127088refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014072320140622
127608refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2014072320140622
129884refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2014072320140622
159900refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014072320140622
160232refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014072320140622
160512refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014072320140622
160524refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014072320140622
162008refgcc -funroll-loops -O3 -fomit-frame-pointer2014072320140622
162376refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014072320140622
162400refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014072320140622
164396refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014072320140622
164456refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014072320140622
171252refclang -O3 -fomit-frame-pointer2014072320140622
171452refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101420141014
171464refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014101420141014
171516refclang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014072320140622
172184refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014072320140622
188440refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014072320140622
188512refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014072320140622
188656refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014072320140622
189708refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014072320140622
192916refgcc -funroll-loops -O2 -fomit-frame-pointer2014072320140622
193164refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014072320140622
194176refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014072320140622
204996refgcc -O3 -fomit-frame-pointer2014072320140622
205032refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014072320140622
205072refgcc -m64 -O3 -fomit-frame-pointer2014072320140622
207280refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2014072320140622
207476refgcc -march=k8 -O3 -fomit-frame-pointer2014072320140622
209840refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014072320140622
210192refgcc -march=barcelona -O3 -fomit-frame-pointer2014072320140622
212648refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2014072320140622
213104refgcc -march=nocona -O3 -fomit-frame-pointer2014072320140622
224320refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014072320140622
224356refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014072320140622
232480refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014072320140622
234796refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014072320140622
258140refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014072320140622
258992refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014072320140622
259136refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014072320140622
259440refgcc -funroll-loops -m64 -O -fomit-frame-pointer2014072320140622
259776refgcc -funroll-loops -O -fomit-frame-pointer2014072320140622
260692refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014072320140622
263152refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014072320140622
264772refgcc -fno-schedule-insns -O -fomit-frame-pointer2014072320140622
264780refgcc -m64 -O -fomit-frame-pointer2014072320140622
265324refgcc -O -fomit-frame-pointer2014072320140622
267812refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2014072320140622
269132refgcc -march=nocona -O2 -fomit-frame-pointer2014072320140622
285424refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014072320140622
285924refgcc -m64 -march=nocona -Os -fomit-frame-pointer2014072320140622
285992refgcc -march=k8 -O2 -fomit-frame-pointer2014072320140622
286240refgcc -m64 -Os -fomit-frame-pointer2014072320140622
286312refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2014072320140622
286556refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014072320140622
286812refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014072320140622
287200refgcc -Os -fomit-frame-pointer2014072320140622
287216refgcc -march=k8 -Os -fomit-frame-pointer2014072320140622
287492refgcc -march=barcelona -O2 -fomit-frame-pointer2014072320140622
287956refgcc -m64 -march=k8 -Os -fomit-frame-pointer2014072320140622
288304refgcc -march=barcelona -Os -fomit-frame-pointer2014072320140622
289732refgcc -march=nocona -Os -fomit-frame-pointer2014072320140622
300768refgcc -m64 -march=barcelona -O -fomit-frame-pointer2014072320140622
302828refgcc -march=k8 -O -fomit-frame-pointer2014072320140622
303768refgcc -m64 -march=k8 -O -fomit-frame-pointer2014072320140622
310964refgcc -march=barcelona -O -fomit-frame-pointer2014072320140622
311524refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014072320140622
311736refgcc -funroll-loops -Os -fomit-frame-pointer2014072320140622
311840refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014072320140622
312084refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014072320140622
312100refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014072320140622
312104refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2014072320140622
312516refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014072320140622
313204refgcc -O2 -fomit-frame-pointer2014072320140622
313432refgcc -m64 -O2 -fomit-frame-pointer2014072320140622
313832refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014072320140622
317016refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014072320140622
317652refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014072320140622
321916refgcc -march=nocona -O -fomit-frame-pointer2014072320140622
323724refgcc -m64 -march=nocona -O -fomit-frame-pointer2014072320140622
924116refgcc -funroll-loops2014072320140622
924632refgcc2014072320140622
925196refcc2014072320140622

Compiler output

Implementation: crypto_sign/mqqsig160/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: 2, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer ref
clang -O3 -fwrapv -march=native -fomit-frame-pointer ref

Compiler output

Implementation: crypto_sign/mqqsig160/ref
Compiler: clang -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
keygen.c: clang: warning: argument unused during compilation: '-fpolly'
keygen.c: clang: warning: argument unused during compilation: '-fvectorize'
keygen.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
keygen.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
mqq-sign.c: clang: warning: argument unused during compilation: '-fpolly'
mqq-sign.c: clang: warning: argument unused during compilation: '-fvectorize'
mqq-sign.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
mqq-sign.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
mqq-verify.c: clang: warning: argument unused during compilation: '-fpolly'
mqq-verify.c: clang: warning: argument unused during compilation: '-fvectorize'
mqq-verify.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
mqq-verify.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=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer ref

Compiler output

Implementation: crypto_sign/mqqsig160/ref
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
keygen.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
keygen.c: clang: warning: argument unused during compilation: '-mavx2'
keygen.c: clang: warning: argument unused during compilation: '-mpclmul'
mqq-sign.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
mqq-sign.c: clang: warning: argument unused during compilation: '-mavx2'
mqq-sign.c: clang: warning: argument unused during compilation: '-mpclmul'
mqq-verify.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
mqq-verify.c: clang: warning: argument unused during compilation: '-mavx2'
mqq-verify.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/mqqsig160/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
keygen.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
keygen.c: clang: warning: argument unused during compilation: '-mavx2'
keygen.c: clang: warning: argument unused during compilation: '-mpclmul'
keygen.c: clang: warning: argument unused during compilation: '-fpolly'
keygen.c: clang: warning: argument unused during compilation: '-fvectorize'
keygen.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
keygen.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
mqq-sign.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
mqq-sign.c: clang: warning: argument unused during compilation: '-mavx2'
mqq-sign.c: clang: warning: argument unused during compilation: '-mpclmul'
mqq-sign.c: clang: warning: argument unused during compilation: '-fpolly'
mqq-sign.c: clang: warning: argument unused during compilation: '-fvectorize'
mqq-sign.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
mqq-sign.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
mqq-verify.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
mqq-verify.c: clang: warning: argument unused during compilation: '-mavx2'
mqq-verify.c: clang: warning: argument unused during compilation: '-mpclmul'
mqq-verify.c: clang: warning: argument unused during compilation: '-fpolly'
mqq-verify.c: clang: warning: argument unused during compilation: '-fvectorize'
mqq-verify.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
mqq-verify.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/mqqsig160/ref
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer
keygen.c: clang: warning: argument unused during compilation: '-mavx2'
mqq-sign.c: clang: warning: argument unused during compilation: '-mavx2'
mqq-verify.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/mqqsig160/ref
Compiler: clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
keygen.c: clang: warning: argument unused during compilation: '-mavx2'
keygen.c: clang: warning: argument unused during compilation: '-fpolly'
keygen.c: clang: warning: argument unused during compilation: '-fvectorize'
keygen.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
keygen.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
mqq-sign.c: clang: warning: argument unused during compilation: '-mavx2'
mqq-sign.c: clang: warning: argument unused during compilation: '-fpolly'
mqq-sign.c: clang: warning: argument unused during compilation: '-fvectorize'
mqq-sign.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
mqq-sign.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
mqq-verify.c: clang: warning: argument unused during compilation: '-mavx2'
mqq-verify.c: clang: warning: argument unused during compilation: '-fpolly'
mqq-verify.c: clang: warning: argument unused during compilation: '-fvectorize'
mqq-verify.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
mqq-verify.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