Implementation notes: amd64, genji262, crypto_dh/nist521gs

Computer: genji262
Architecture: amd64
CPU ID: AuthenticAMD-00800f12-178bfbff
SUPERCOP version: 20191017
Operation: crypto_dh
Primitive: nist521gs
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
440206821717 0 848273 808 1608refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
440552221717 0 848273 808 1608refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
441155023557 0 850737 808 1608refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
482600810078 0 833755 808 1640refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
515598621260 0 848049 824 1640refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
516571014741 0 840011 816 1640refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
522753027393 0 854289 808 1576refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
527764612449 0 836271 800 1576refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
708551837848 0 868420 864 1608reficc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
708870837912 0 868484 864 1608reficc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
709002837912 0 868484 864 1608reficc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
709979637848 0 868420 864 1608reficc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
713149838288 0 868460 864 1608reficc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
718159238240 0 868412 864 1608reficc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
718788438240 0 868412 864 1608reficc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
719536444744 0 875124 864 1608reficc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
722504244744 0 875124 864 1608reficc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
724319244744 0 875124 864 1608reficc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
724798844744 0 875124 864 1608reficc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
728886448352 0 877340 864 1608reficc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102420191017
734773645608 0 876020 864 1608reficc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
735400645608 0 876020 864 1608reficc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
736857045608 0 876020 864 1608reficc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
737011045608 0 876020 864 1608reficc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
737143048664 0 877708 864 1608reficc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102420191017
749421238288 0 868460 864 1608reficc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
841183214188 0 839123 816 1640refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017

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