Implementation notes: amd64, hydra2, crypto_aead/ifeedaes128n104v1

Computer: hydra2
Architecture: amd64
CPU ID: GenuineIntel-000206c2-bfebfbff
SUPERCOP version: 20141014
Operation: crypto_aead
Primitive: ifeedaes128n104v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
511024refclang -O3 -fwrapv -march=native -fomit-frame-pointer2014072220140622
511028refclang -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014072220140622
511344refclang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014072220140622
511360refclang -O3 -fomit-frame-pointer2014072220140622
511456refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101420141014
511908refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014101420141014
514224refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014072220140622
705704refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014060520140525
705724refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014060520140525
709996refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014060520140525
710032refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014060520140525
713272refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014060520140525
713284refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014060520140525
713480refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014060520140525
713548refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014060520140525
724932refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014060520140525
724980refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014060520140525
725032refgcc -funroll-loops -O2 -fomit-frame-pointer2014060520140525
741624refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014060520140525
741824refgcc -funroll-loops -m64 -O -fomit-frame-pointer2014060520140525
741924refgcc -funroll-loops -O -fomit-frame-pointer2014060520140525
744784refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014060520140525
744820refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014060520140525
745188refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014060520140525
745540refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014060520140525
773768refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2014060520140525
773768refgcc -march=k8 -O3 -fomit-frame-pointer2014060520140525
773864refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014060520140525
774840refgcc -march=barcelona -O3 -fomit-frame-pointer2014060520140525
803544refgcc -funroll-loops -O3 -fomit-frame-pointer2014060520140525
803580refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014060520140525
803676refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014060520140525
833992refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014060520140525
834344refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014060520140525
874144refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2014060520140525
874224refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014060520140525
874232refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014060520140525
874280refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014060520140525
875092refgcc -m64 -O3 -fomit-frame-pointer2014060520140525
875116refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014060520140525
875208refgcc -O3 -fomit-frame-pointer2014060520140525
878388refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2014060520140525
923208refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014060520140525
923276refgcc -march=barcelona -O2 -fomit-frame-pointer2014060520140525
926064refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2014060520140525
926136refgcc -march=k8 -O2 -fomit-frame-pointer2014060520140525
954432refgcc -march=nocona -O3 -fomit-frame-pointer2014060520140525
954584refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2014060520140525
997140refgcc -O2 -fomit-frame-pointer2014060520140525
997900refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014060520140525
998100refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014060520140525
999848refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2014060520140525
999860refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014060520140525
999872refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014060520140525
1000016refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014060520140525
1000940refgcc -march=barcelona -O -fomit-frame-pointer2014060520140525
1001084refgcc -m64 -march=barcelona -O -fomit-frame-pointer2014060520140525
1002260refgcc -m64 -O2 -fomit-frame-pointer2014060520140525
1002448refgcc -m64 -march=k8 -O -fomit-frame-pointer2014060520140525
1002536refgcc -march=k8 -O -fomit-frame-pointer2014060520140525
1002820refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014060520140525
1005088refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014060520140525
1013096refgcc -m64 -march=core2 -O -fomit-frame-pointer2014060520140525
1013532refgcc -O -fomit-frame-pointer2014060520140525
1013712refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014060520140525
1014020refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014060520140525
1014500refgcc -m64 -march=corei7 -O -fomit-frame-pointer2014060520140525
1014720refgcc -fno-schedule-insns -O -fomit-frame-pointer2014060520140525
1015104refgcc -m64 -O -fomit-frame-pointer2014060520140525
1015520refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014060520140525
1015656refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014060520140525
1015908refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014060520140525
1339652refgcc -march=nocona -O -fomit-frame-pointer2014060520140525
1340100refgcc -march=nocona -O2 -fomit-frame-pointer2014060520140525
1340204refgcc -m64 -march=nocona -O -fomit-frame-pointer2014060520140525
1344420refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2014060520140525
1402132refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014060520140525
1402912refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014060520140525
1419388refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014060520140525
1419532refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2014060520140525
1422568refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014060520140525
1422896refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014060520140525
1423836refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014060520140525
1423844refgcc -funroll-loops -Os -fomit-frame-pointer2014060520140525
1424056refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014060520140525
1431472refgcc -m64 -march=nocona -Os -fomit-frame-pointer2014060520140525
1433012refgcc -march=nocona -Os -fomit-frame-pointer2014060520140525
1438908refgcc -march=k8 -Os -fomit-frame-pointer2014060520140525
1439148refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014060520140525
1439148refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014060520140525
1439172refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2014060520140525
1439176refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014060520140525
1439224refgcc -m64 -march=core2 -Os -fomit-frame-pointer2014060520140525
1439444refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014060520140525
1439604refgcc -m64 -march=k8 -Os -fomit-frame-pointer2014060520140525
1439840refgcc -m64 -Os -fomit-frame-pointer2014060520140525
1439996refgcc -Os -fomit-frame-pointer2014060520140525
1439996refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014060520140525
1441136refgcc -march=barcelona -Os -fomit-frame-pointer2014060520140525
3414920refgcc -funroll-loops2014060520140525
3421396refgcc2014060520140525
3422128refcc2014060520140525

Compiler output

Implementation: crypto_aead/ifeedaes128n104v1/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/ifeedaes128n104v1/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/ifeedaes128n104v1/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/ifeedaes128n104v1/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/ifeedaes128n104v1/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/ifeedaes128n104v1/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