Implementation notes: amd64, genji346, crypto_dh/nist521gs

Computer: genji346
Architecture: amd64
CPU ID: AuthenticAMD-00830f10-178bfbff
SUPERCOP version: 20191017
Operation: crypto_dh
Primitive: nist521gs
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
375366021717 0 848377 824 1608refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
375732021717 0 848377 824 1608refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
376830023557 0 850841 824 1608refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
409606010078 0 833859 824 1640refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
467128012449 0 836375 816 1576refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
467174019197 0 846633 840 1640refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
470008014741 0 839971 832 1640refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
484248027393 0 854393 824 1576refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
653386037848 0 868524 880 1608reficc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102520191017
653938037912 0 868588 880 1608reficc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102520191017
655804038288 0 868564 880 1608reficc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102520191017
656242037912 0 868588 880 1608reficc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102520191017
656710038288 0 868564 880 1608reficc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102520191017
660072038240 0 868516 880 1608reficc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102520191017
660500038240 0 868516 880 1608reficc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102520191017
660832037848 0 868524 880 1608reficc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102520191017
666552044744 0 875228 880 1608reficc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102520191017
667044044744 0 875228 880 1608reficc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102520191017
667144044744 0 875228 880 1608reficc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102520191017
667900044744 0 875228 880 1608reficc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102520191017
669002048352 0 877444 880 1608reficc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102520191017
674870045608 0 876124 880 1608reficc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102520191017
677020045608 0 876124 880 1608reficc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102520191017
678868045608 0 876124 880 1608reficc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102520191017
681446048664 0 877812 880 1608reficc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102520191017
682050045608 0 876124 880 1608reficc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102520191017
738650014188 0 839099 832 1640refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017

Test failure

Implementation: ref
Security model: unknown
Compiler: icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer ref
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer ref
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer ref
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer ref
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer ref
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer ref

Compiler output

Implementation: ref
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
dh.c: dh.c:831:2: warning: implicit declaration of function 'randombytes' is invalid in C99 [-Wimplicit-function-declaration]
dh.c: randombytes(sk,PANES-1);
dh.c: ^
dh.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref

Compiler output

Implementation: ref
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
dh.c: dh.c: In function 'crypto_dh_nist521gs_ref_keypair':
dh.c: dh.c:831:2: warning: implicit declaration of function 'randombytes' [-Wimplicit-function-declaration]
dh.c: 831 | randombytes(sk,PANES-1);
dh.c: | ^~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE ref

Compiler output

Implementation: ref
Security model: unknown
Compiler: icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer
dh.c: dh.c(831): warning #266: function "randombytes" declared implicitly
dh.c: randombytes(sk,PANES-1);
dh.c: ^
dh.c:

Number of similar (compiler,implementation) pairs: 24, namely:
CompilerImplementations
icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer ref
icc -march=broadwell -mtune=broadwell -O3 -fomit-frame-pointer ref
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer ref
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer ref
icc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer ref
icc -march=core-avx-i -mtune=core-avx-i -O3 -fomit-frame-pointer ref
icc -march=core-avx2 -mtune=core-avx2 -O2 -fomit-frame-pointer ref
icc -march=core-avx2 -mtune=core-avx2 -O3 -fomit-frame-pointer ref
icc -march=corei7-avx -mtune=corei7-avx -O2 -fomit-frame-pointer ref
icc -march=corei7-avx -mtune=corei7-avx -O3 -fomit-frame-pointer ref
icc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer ref
icc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer ref
icc -march=haswell -mtune=haswell -O2 -fomit-frame-pointer ref
icc -march=haswell -mtune=haswell -O3 -fomit-frame-pointer ref
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer ref
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer ref
icc -march=ivybridge -mtune=ivybridge -O2 -fomit-frame-pointer ref
icc -march=ivybridge -mtune=ivybridge -O3 -fomit-frame-pointer ref
icc -march=sandybridge -mtune=sandybridge -O2 -fomit-frame-pointer ref
icc -march=sandybridge -mtune=sandybridge -O3 -fomit-frame-pointer ref
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer ref
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer ref
icc -march=skylake -mtune=skylake -O2 -fomit-frame-pointer ref
icc -march=skylake -mtune=skylake -O3 -fomit-frame-pointer ref