Implementation notes: amd64, h5nano, crypto_dh/kumfp127g

Computer: h5nano
Architecture: amd64
CPU ID: CentaurHauls-000006f8-afc9fbff
SUPERCOP version: 20141014
Operation: crypto_dh
Primitive: kumfp127g
TimeImplementationCompilerBenchmark dateSUPERCOP version
928945v02/vargcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014052820140425
928945v02/vargcc -m64 -march=k8 -O3 -fomit-frame-pointer2014052820140425
928945v02/vargcc -march=barcelona -O2 -fomit-frame-pointer2014052820140425
928945v02/vargcc -march=barcelona -O3 -fomit-frame-pointer2014052820140425
928950v02/vargcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014052820140425
928950v02/vargcc -m64 -march=k8 -O2 -fomit-frame-pointer2014052820140425
928955v02/vargcc -march=k8 -O2 -fomit-frame-pointer2014052820140425
928955v02/vargcc -march=k8 -O3 -fomit-frame-pointer2014052820140425
929175v02/vargcc -m64 -march=core2 -O3 -fomit-frame-pointer2014052820140425
929175v02/vargcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014052820140425
929175v02/vargcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014052820140425
929175v02/vargcc -m64 -march=corei7 -O3 -fomit-frame-pointer2014052820140425
929175v02/vargcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014052820140425
929200v02/vargcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014052820140425
929210v02/vargcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014052820140425
929220v02/vargcc -m64 -march=core2 -O2 -fomit-frame-pointer2014052820140425
929220v02/vargcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014052820140425
929230v02/vargcc -O3 -fomit-frame-pointer2014052820140425
929245v02/vargcc -O2 -fomit-frame-pointer2014052820140425
929250v02/vargcc -fno-schedule-insns -O3 -fomit-frame-pointer2014052820140425
929250v02/vargcc -m64 -O3 -fomit-frame-pointer2014052820140425
929265v02/vargcc -fno-schedule-insns -O2 -fomit-frame-pointer2014052820140425
929265v02/vargcc -m64 -O2 -fomit-frame-pointer2014052820140425
929380v02/vargcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014052820140425
929415v02/vargcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014052820140425
929420v02/vargcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014052820140425
929420v02/vargcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014052820140425
929420v02/vargcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014052820140425
929660v02/vargcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014052820140425
929660v02/vargcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014052820140425
929665v02/vargcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014052820140425
929665v02/vargcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014052820140425
929935v02/vargcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014052820140425
929945v02/vargcc -funroll-loops -O2 -fomit-frame-pointer2014052820140425
929945v02/vargcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014052820140425
929950v02/vargcc -funroll-loops -O3 -fomit-frame-pointer2014052820140425
929950v02/vargcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014052820140425
929950v02/vargcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014052820140425
929950v02/vargcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014052820140425
929950v02/vargcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014052820140425
929960v02/vargcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014052820140425
930695v02/vargcc -m64 -march=nocona -O3 -fomit-frame-pointer2014052820140425
930715v02/vargcc -march=nocona -O3 -fomit-frame-pointer2014052820140425
930720v02/vargcc -m64 -march=nocona -O2 -fomit-frame-pointer2014052820140425
930720v02/vargcc -march=nocona -O2 -fomit-frame-pointer2014052820140425
930805v02/vargcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014052820140425
930810v02/vargcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014052820140425
930810v02/vargcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014052820140425
930810v02/vargcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014052820140425
930940v02/vargcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014052820140425
931105v02/vargcc -m64 -march=corei7 -Os -fomit-frame-pointer2014052820140425
931115v02/vargcc -fno-schedule-insns -Os -fomit-frame-pointer2014052820140425
931115v02/vargcc -m64 -Os -fomit-frame-pointer2014052820140425
931115v02/vargcc -m64 -march=core2 -Os -fomit-frame-pointer2014052820140425
931115v02/vargcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014052820140425
931115v02/vargcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014052820140425
931115v02/vargcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014052820140425
931115v02/vargcc -m64 -march=nocona -Os -fomit-frame-pointer2014052820140425
931115v02/vargcc -march=nocona -Os -fomit-frame-pointer2014052820140425
931125v02/vargcc -Os -fomit-frame-pointer2014052820140425
931125v02/vargcc -march=k8 -Os -fomit-frame-pointer2014052820140425
931130v02/vargcc -m64 -march=barcelona -Os -fomit-frame-pointer2014052820140425
931135v02/vargcc -march=barcelona -Os -fomit-frame-pointer2014052820140425
931170v02/vargcc -m64 -march=k8 -Os -fomit-frame-pointer2014052820140425
933415v02/vargcc -m64 -march=core2 -O -fomit-frame-pointer2014052820140425
933415v02/vargcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014052820140425
933415v02/vargcc -m64 -march=corei7 -O -fomit-frame-pointer2014052820140425
933415v02/vargcc -march=nocona -O -fomit-frame-pointer2014052820140425
933420v02/vargcc -O -fomit-frame-pointer2014052820140425
933420v02/vargcc -fno-schedule-insns -O -fomit-frame-pointer2014052820140425
933420v02/vargcc -m64 -O -fomit-frame-pointer2014052820140425
933420v02/vargcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014052820140425
933420v02/vargcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014052820140425
933435v02/vargcc -m64 -march=barcelona -O -fomit-frame-pointer2014052820140425
933435v02/vargcc -march=barcelona -O -fomit-frame-pointer2014052820140425
933440v02/vargcc -m64 -march=k8 -O -fomit-frame-pointer2014052820140425
933445v02/vargcc -march=k8 -O -fomit-frame-pointer2014052820140425
933710v02/vargcc -m64 -march=nocona -O -fomit-frame-pointer2014052820140425
934595v02/vargcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014052820140425
934600v02/vargcc -funroll-loops -Os -fomit-frame-pointer2014052820140425
934600v02/vargcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014052820140425
934600v02/vargcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014052820140425
934600v02/vargcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014052820140425
934600v02/vargcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014052820140425
934605v02/vargcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014052820140425
934610v02/vargcc -funroll-loops -m64 -Os -fomit-frame-pointer2014052820140425
937285v02/vargcc -funroll-loops -O -fomit-frame-pointer2014052820140425
937290v02/vargcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014052820140425
937290v02/vargcc -funroll-loops -m64 -O -fomit-frame-pointer2014052820140425
937500v02/vargcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014052820140425
937510v02/vargcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014052820140425
939595v02/vargcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014052820140425
940325v02/vargcc2014052820140425
940335v02/varcc2014052820140425
940340v02/vargcc -funroll-loops2014052820140425

Compiler output

Implementation: crypto_dh/kumfp127g/v02/var
Compiler: clang -O3 -fomit-frame-pointer
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-fomit-frame-pointer'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-D SUPERCOP'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-I .'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-I /home/djb/benchmarking/supercop-20140622/supercop-data/h5nano/amd64/include'
divisor_ym_dbl.s: divisor_ym_dbl.s:324:2: error: unexpected token at start of statement
divisor_ym_dbl.s: /The previous 2 movq instructions can be safely removed.
divisor_ym_dbl.s: ^

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer v02/var

Compiler output

Implementation: crypto_dh/kumfp127g/v02/var
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
fp_2e127m1_x8664.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
fp_2e127m1_x8664.c: clang: warning: argument unused during compilation: '-mavx2'
fp_2e127m1_x8664.c: clang: warning: argument unused during compilation: '-mpclmul'
fpx.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
fpx.c: clang: warning: argument unused during compilation: '-mavx2'
fpx.c: clang: warning: argument unused during compilation: '-mpclmul'
smul_ym.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
smul_ym.c: clang: warning: argument unused during compilation: '-mavx2'
smul_ym.c: clang: warning: argument unused during compilation: '-mpclmul'
test.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
test.c: clang: warning: argument unused during compilation: '-mavx2'
test.c: clang: warning: argument unused during compilation: '-mpclmul'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-fwrapv'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-march=x86-64'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-mavx2'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-maes'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-mpclmul'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-fomit-frame-pointer'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-D SUPERCOP'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-I .'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-I /home/djb/benchmarking/supercop-20141014/supercop-data/h5nano/amd64/include'
divisor_ym_dbl.s: divisor_ym_dbl.s:324:2: error: unexpected token at start of statement
divisor_ym_dbl.s: /The previous 2 movq instructions can be safely removed.
divisor_ym_dbl.s: ^

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer v02/var

Compiler output

Implementation: crypto_dh/kumfp127g/v02/var
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
fp_2e127m1_x8664.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
fp_2e127m1_x8664.c: clang: warning: argument unused during compilation: '-mavx2'
fp_2e127m1_x8664.c: clang: warning: argument unused during compilation: '-mpclmul'
fp_2e127m1_x8664.c: clang: warning: argument unused during compilation: '-fpolly'
fp_2e127m1_x8664.c: clang: warning: argument unused during compilation: '-fvectorize'
fp_2e127m1_x8664.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
fp_2e127m1_x8664.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
fpx.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
fpx.c: clang: warning: argument unused during compilation: '-mavx2'
fpx.c: clang: warning: argument unused during compilation: '-mpclmul'
fpx.c: clang: warning: argument unused during compilation: '-fpolly'
fpx.c: clang: warning: argument unused during compilation: '-fvectorize'
fpx.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
fpx.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
smul_ym.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
smul_ym.c: clang: warning: argument unused during compilation: '-mavx2'
smul_ym.c: clang: warning: argument unused during compilation: '-mpclmul'
smul_ym.c: clang: warning: argument unused during compilation: '-fpolly'
smul_ym.c: clang: warning: argument unused during compilation: '-fvectorize'
smul_ym.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
smul_ym.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
test.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
test.c: clang: warning: argument unused during compilation: '-mavx2'
test.c: clang: warning: argument unused during compilation: '-mpclmul'
test.c: clang: warning: argument unused during compilation: '-fpolly'
test.c: clang: warning: argument unused during compilation: '-fvectorize'
test.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
test.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-fwrapv'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-march=x86-64'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-mavx2'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-maes'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-mpclmul'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-fpolly'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-funroll-loops'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-fvectorize'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-fslp-vectorize'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-fomit-frame-pointer'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-D SUPERCOP'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-I .'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-I /home/djb/benchmarking/supercop-20141014/supercop-data/h5nano/amd64/include'
divisor_ym_dbl.s: divisor_ym_dbl.s:324:2: error: unexpected token at start of statement
divisor_ym_dbl.s: /The previous 2 movq instructions can be safely removed.
divisor_ym_dbl.s: ^

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 v02/var

Compiler output

Implementation: crypto_dh/kumfp127g/v02/var
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer
fp_2e127m1_x8664.c: clang: warning: argument unused during compilation: '-mavx2'
fpx.c: clang: warning: argument unused during compilation: '-mavx2'
smul_ym.c: clang: warning: argument unused during compilation: '-mavx2'
test.c: clang: warning: argument unused during compilation: '-mavx2'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-fwrapv'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-mavx2'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-fomit-frame-pointer'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-D SUPERCOP'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-I .'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-I /home/djb/benchmarking/supercop-20140622/supercop-data/h5nano/amd64/include'
divisor_ym_dbl.s: divisor_ym_dbl.s:324:2: error: unexpected token at start of statement
divisor_ym_dbl.s: /The previous 2 movq instructions can be safely removed.
divisor_ym_dbl.s: ^

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer v02/var

Compiler output

Implementation: crypto_dh/kumfp127g/v02/var
Compiler: clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
fp_2e127m1_x8664.c: clang: warning: argument unused during compilation: '-mavx2'
fp_2e127m1_x8664.c: clang: warning: argument unused during compilation: '-fpolly'
fp_2e127m1_x8664.c: clang: warning: argument unused during compilation: '-fvectorize'
fp_2e127m1_x8664.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
fp_2e127m1_x8664.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
fpx.c: clang: warning: argument unused during compilation: '-mavx2'
fpx.c: clang: warning: argument unused during compilation: '-fpolly'
fpx.c: clang: warning: argument unused during compilation: '-fvectorize'
fpx.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
fpx.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
smul_ym.c: clang: warning: argument unused during compilation: '-mavx2'
smul_ym.c: clang: warning: argument unused during compilation: '-fpolly'
smul_ym.c: clang: warning: argument unused during compilation: '-fvectorize'
smul_ym.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
smul_ym.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
test.c: clang: warning: argument unused during compilation: '-mavx2'
test.c: clang: warning: argument unused during compilation: '-fpolly'
test.c: clang: warning: argument unused during compilation: '-fvectorize'
test.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
test.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-fwrapv'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-mavx2'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-fpolly'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-funroll-loops'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-fvectorize'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-fslp-vectorize'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-fomit-frame-pointer'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-D SUPERCOP'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-I .'
divisor_ym_dbl.s: clang: warning: argument unused during compilation: '-I /home/djb/benchmarking/supercop-20140622/supercop-data/h5nano/amd64/include'
divisor_ym_dbl.s: divisor_ym_dbl.s:324:2: error: unexpected token at start of statement
divisor_ym_dbl.s: /The previous 2 movq instructions can be safely removed.
divisor_ym_dbl.s: ^

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 v02/var