Implementation notes: amd64, h4e350, crypto_dh/kumfp127g

Computer: h4e350
Architecture: amd64
CPU ID: AuthenticAMD-00500f10-178bfbff
SUPERCOP version: 20141014
Operation: crypto_dh
Primitive: kumfp127g
TimeImplementationCompilerBenchmark dateSUPERCOP version
798186v02/vargcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014070220140525
798378v02/vargcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014070220140525
798438v02/vargcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014070220140525
798453v02/vargcc -funroll-loops -O2 -fomit-frame-pointer2014070220140525
798504v02/vargcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014070220140525
798528v02/vargcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014070220140525
798537v02/vargcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014070220140525
798546v02/vargcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014070220140525
798558v02/vargcc -funroll-loops -O3 -fomit-frame-pointer2014070220140525
798561v02/vargcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014070220140525
798570v02/vargcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014070220140525
798591v02/vargcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014070220140525
798600v02/vargcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014070220140525
798627v02/vargcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014070220140525
798633v02/vargcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014070220140525
798702v02/vargcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014070220140525
798714v02/vargcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014070220140525
798750v02/vargcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014070220140525
798876v02/vargcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014070220140525
798924v02/vargcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014070220140525
798969v02/vargcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014070220140525
799233v02/vargcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014070220140525
799431v02/vargcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014070220140525
799674v02/vargcc -funroll-loops -m64 -O -fomit-frame-pointer2014070220140525
799689v02/vargcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014070220140525
799704v02/vargcc -funroll-loops -O -fomit-frame-pointer2014070220140525
799998v02/vargcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014070220140525
800040v02/vargcc -m64 -march=k8 -O2 -fomit-frame-pointer2014070220140525
800043v02/vargcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014070220140525
800046v02/vargcc -march=barcelona -O3 -fomit-frame-pointer2014070220140525
800070v02/vargcc -march=barcelona -O2 -fomit-frame-pointer2014070220140525
800130v02/vargcc -march=k8 -O3 -fomit-frame-pointer2014070220140525
800217v02/vargcc -march=k8 -O2 -fomit-frame-pointer2014070220140525
800226v02/vargcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014070220140525
800238v02/vargcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014070220140525
800292v02/vargcc -m64 -march=k8 -O3 -fomit-frame-pointer2014070220140525
800328v02/vargcc -fno-schedule-insns -O3 -fomit-frame-pointer2014070220140525
800337v02/vargcc -O2 -fomit-frame-pointer2014070220140525
800343v02/vargcc -O3 -fomit-frame-pointer2014070220140525
800544v02/vargcc -m64 -O2 -fomit-frame-pointer2014070220140525
800553v02/vargcc -m64 -O3 -fomit-frame-pointer2014070220140525
800559v02/vargcc -m64 -march=k8 -Os -fomit-frame-pointer2014070220140525
800559v02/vargcc -march=nocona -Os -fomit-frame-pointer2014070220140525
800565v02/vargcc -m64 -march=barcelona -Os -fomit-frame-pointer2014070220140525
800568v02/vargcc -m64 -march=nocona -Os -fomit-frame-pointer2014070220140525
800571v02/vargcc -march=barcelona -Os -fomit-frame-pointer2014070220140525
800574v02/vargcc -Os -fomit-frame-pointer2014070220140525
800598v02/vargcc -fno-schedule-insns -O2 -fomit-frame-pointer2014070220140525
800619v02/vargcc -m64 -march=corei7 -Os -fomit-frame-pointer2014070220140525
800628v02/vargcc -m64 -march=core2 -Os -fomit-frame-pointer2014070220140525
800628v02/vargcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014070220140525
800655v02/vargcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014070220140525
800664v02/vargcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014070220140525
800682v02/vargcc -funroll-loops -Os -fomit-frame-pointer2014070220140525
800685v02/vargcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014070220140525
800697v02/vargcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014070220140525
800706v02/vargcc -m64 -Os -fomit-frame-pointer2014070220140525
800715v02/vargcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014070220140525
800715v02/vargcc -march=k8 -Os -fomit-frame-pointer2014070220140525
800736v02/vargcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014070220140525
800802v02/vargcc -funroll-loops -m64 -Os -fomit-frame-pointer2014070220140525
800802v02/vargcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014070220140525
800811v02/vargcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014070220140525
800964v02/vargcc -m64 -march=k8 -O -fomit-frame-pointer2014070220140525
800970v02/vargcc -march=k8 -O -fomit-frame-pointer2014070220140525
801066v02/vargcc -fno-schedule-insns -O -fomit-frame-pointer2014070220140525
801069v02/vargcc -fno-schedule-insns -Os -fomit-frame-pointer2014070220140525
801069v02/vargcc -m64 -march=core2 -O -fomit-frame-pointer2014070220140525
801078v02/vargcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014070220140525
801081v02/vargcc -m64 -O -fomit-frame-pointer2014070220140525
801087v02/vargcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014070220140525
801198v02/vargcc -m64 -march=nocona -O -fomit-frame-pointer2014070220140525
801216v02/vargcc -m64 -march=core2 -O3 -fomit-frame-pointer2014070220140525
801234v02/vargcc -O -fomit-frame-pointer2014070220140525
801234v02/vargcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014070220140525
801237v02/vargcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014070220140525
801243v02/vargcc -m64 -march=corei7 -O -fomit-frame-pointer2014070220140525
801291v02/vargcc -march=barcelona -O -fomit-frame-pointer2014070220140525
801342v02/vargcc -march=nocona -O -fomit-frame-pointer2014070220140525
801399v02/vargcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014070220140525
801561v02/vargcc -m64 -march=barcelona -O -fomit-frame-pointer2014070220140525
801573v02/vargcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014070220140525
801726v02/vargcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014070220140525
801735v02/vargcc -m64 -march=core2 -O2 -fomit-frame-pointer2014070220140525
802470v02/vargcc -m64 -march=nocona -O2 -fomit-frame-pointer2014070220140525
802470v02/vargcc -march=nocona -O2 -fomit-frame-pointer2014070220140525
803253v02/vargcc -march=nocona -O3 -fomit-frame-pointer2014070220140525
803469v02/vargcc -m64 -march=nocona -O3 -fomit-frame-pointer2014070220140525
803673v02/vargcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014070220140525
814386v02/vargcc2014070220140525
814428v02/vargcc -funroll-loops2014070220140525
815856v02/varcc2014070220140525

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/supercop-20140622/supercop-data/h4e350/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/h4e350/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/h4e350/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/supercop-20140622/supercop-data/h4e350/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/supercop-20140622/supercop-data/h4e350/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