Implementation notes: amd64, hydra2, crypto_aead/cba1

Computer: hydra2
Architecture: amd64
CPU ID: GenuineIntel-000206c2-bfebfbff
SUPERCOP version: 20141014
Operation: crypto_aead
Primitive: cba1
TimeImplementationCompilerBenchmark dateSUPERCOP version
269700refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014072020140622
269936refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101420141014
270140refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014060520140525
270468refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014060520140525
270780refgcc -march=nocona -O3 -fomit-frame-pointer2014060520140525
270828refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014060520140525
270924refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2014060520140525
270964refclang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014072020140622
271204refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014060520140525
271352refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014101420141014
271392refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014060520140525
271592refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014060520140525
272624refclang -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014072020140622
272956refclang -O3 -fwrapv -march=native -fomit-frame-pointer2014072020140622
273784refclang -O3 -fomit-frame-pointer2014072020140622
281128refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014060520140525
281428refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014060520140525
281616refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014060520140525
281676refgcc -funroll-loops -O -fomit-frame-pointer2014060520140525
281720refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014060520140525
281744refgcc -funroll-loops -m64 -O -fomit-frame-pointer2014060520140525
281796refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014060520140525
282256refgcc -march=k8 -O3 -fomit-frame-pointer2014060520140525
282456refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014060520140525
282460refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014060520140525
282468refgcc -march=barcelona -O3 -fomit-frame-pointer2014060520140525
282648refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2014060520140525
282672refgcc -funroll-loops -O2 -fomit-frame-pointer2014060520140525
282680refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014060520140525
283168refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014060520140525
283288refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014060520140525
283336refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014060520140525
283348refgcc -m64 -O3 -fomit-frame-pointer2014060520140525
283500refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014060520140525
283596refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014060520140525
283692refgcc -O3 -fomit-frame-pointer2014060520140525
283752refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014060520140525
283896refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2014060520140525
283924refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014060520140525
283948refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014060520140525
284096refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2014060520140525
284260refgcc -funroll-loops -O3 -fomit-frame-pointer2014060520140525
284340refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014060520140525
284780refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2014060520140525
284808refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014060520140525
285084refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014060520140525
285168refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014060520140525
286292refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014060520140525
286356refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014060520140525
287660refgcc -march=nocona -O2 -fomit-frame-pointer2014060520140525
290580refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014060520140525
290668refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014060520140525
290856refgcc -O2 -fomit-frame-pointer2014060520140525
290884refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014060520140525
291040refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2014060520140525
291048refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014060520140525
291068refgcc -m64 -O2 -fomit-frame-pointer2014060520140525
291112refgcc -march=barcelona -O2 -fomit-frame-pointer2014060520140525
291448refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014060520140525
291916refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014060520140525
293052refgcc -march=k8 -O2 -fomit-frame-pointer2014060520140525
293512refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2014060520140525
294936refgcc -march=barcelona -O -fomit-frame-pointer2014060520140525
295220refgcc -m64 -march=barcelona -O -fomit-frame-pointer2014060520140525
298136refgcc -m64 -march=k8 -Os -fomit-frame-pointer2014060520140525
298432refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014060520140525
298440refgcc -m64 -Os -fomit-frame-pointer2014060520140525
298588refgcc -march=k8 -Os -fomit-frame-pointer2014060520140525
299312refgcc -Os -fomit-frame-pointer2014060520140525
299352refgcc -m64 -march=nocona -Os -fomit-frame-pointer2014060520140525
299760refgcc -march=nocona -O -fomit-frame-pointer2014060520140525
299824refgcc -march=barcelona -Os -fomit-frame-pointer2014060520140525
299836refgcc -m64 -march=nocona -O -fomit-frame-pointer2014060520140525
299860refgcc -march=nocona -Os -fomit-frame-pointer2014060520140525
299900refgcc -m64 -march=core2 -Os -fomit-frame-pointer2014060520140525
299916refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014060520140525
299960refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014060520140525
299980refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014060520140525
300956refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014060520140525
302468refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2014060520140525
305568refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014060520140525
306272refgcc -fno-schedule-insns -O -fomit-frame-pointer2014060520140525
306852refgcc -march=k8 -O -fomit-frame-pointer2014060520140525
306900refgcc -m64 -march=k8 -O -fomit-frame-pointer2014060520140525
307156refgcc -O -fomit-frame-pointer2014060520140525
307252refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014060520140525
307292refgcc -m64 -O -fomit-frame-pointer2014060520140525
307368refgcc -m64 -march=corei7 -O -fomit-frame-pointer2014060520140525
307544refgcc -m64 -march=core2 -O -fomit-frame-pointer2014060520140525
308556refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014060520140525
308560refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014060520140525
308764refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014060520140525
308952refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014060520140525
309012refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014060520140525
309684refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2014060520140525
309752refgcc -funroll-loops -Os -fomit-frame-pointer2014060520140525
309928refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014060520140525
312220refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014060520140525
312268refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014060520140525
500028refgcc2014060520140525
527012refcc2014060520140525
531676refgcc -funroll-loops2014060520140525

Compiler output

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