Implementation notes: amd64, genji548, crypto_dh/gls254

Computer: genji548
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20191017
Operation: crypto_dh
Primitive: gls254
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
14062027520 220672 062676 221560 1608opticc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019101920191017
14066228184 220672 063148 221560 1608opticc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019101920191017
14093227520 220672 062372 221560 1608opticc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019101920191017
14125228184 220672 063692 221560 1608opticc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019101920191017
15045420025 196608 051987 197448 1608optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
15201418729 196608 048019 197448 1608optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
15238827168 220672 061612 221560 1576opticc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019101920191017
15251027168 220672 061452 221560 1576opticc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019101920191017
15256228040 220672 062724 221560 1576opticc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019101920191017
15260628040 220672 062452 221560 1576opticc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019101920191017
15261228040 220672 062452 221560 1576opticc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019101920191017
15261628040 220672 062452 221560 1576opticc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019101920191017
15265628040 220672 062724 221560 1576opticc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019101920191017
15266828040 220672 062452 221560 1576opticc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019101920191017
15277628040 220672 062724 221560 1576opticc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019101920191017
15296627168 220672 061612 221560 1576opticc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019101920191017
15299427168 220672 061612 221560 1576opticc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019101920191017
15306027168 220672 061452 221560 1576opticc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019101920191017
15309227168 220672 061612 221560 1576opticc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019101920191017
15329427168 220672 061452 221560 1576opticc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019101920191017
16020431672 220672 064740 221560 1576opticc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019101920191017
16050830464 220672 063588 221560 1576opticc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019101920191017
16219431072 100896 066367 101792 1608reficc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019101920191017
16281031136 100896 066127 101792 1608reficc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019101920191017
16727816721 196608 044771 197440 1608optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
16869627984 100896 063087 101792 1608reficc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019101920191017
16871227952 100896 063599 101792 1608reficc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019101920191017
17218618745 196608 047763 197448 1608optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
17532827416 100896 061967 101792 1576reficc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019101920191017
17538827416 100896 061967 101792 1576reficc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019101920191017
17547427416 100896 061967 101792 1576reficc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019101920191017
17570826752 100896 061575 101792 1576reficc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019101920191017
17573426752 100896 061575 101792 1576reficc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019101920191017
17575427416 100896 061967 101792 1576reficc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019101920191017
17589626752 100896 061575 101792 1576reficc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019101920191017
17604030520 100896 065103 101792 1576reficc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019101920191017
17613429888 100896 064311 101792 1576reficc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019101920191017
17622030520 100896 065103 101792 1576reficc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019101920191017
17628429888 100896 064311 101792 1576reficc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019101920191017
17636229888 100896 064311 101792 1576reficc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019101920191017
17638030520 100896 065103 101792 1576reficc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019101920191017
17658426752 100896 061575 101792 1576reficc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019101920191017
17674829888 100896 064311 101792 1576reficc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019101920191017
17724630520 100896 065103 101792 1576reficc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019101920191017
18013430192 100896 063399 101792 1576reficc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019101920191017
18087826793 98336 059214 99184 1608refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
18151433296 100896 066559 101792 1576reficc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019101920191017
18947014273 98336 044014 99184 1608refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
19111828040 220672 062724 221560 1576opticc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019101920191017
19231827168 220672 061452 221560 1576opticc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019101920191017
19313012992 98336 042110 99184 1608refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
19411212179 98336 040350 99176 1608refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
20258237368 100352 072276 101240 1608proticc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019101920191017
20409436224 100352 071244 101240 1608proticc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019101920191017
20442637144 100352 072356 101240 1608proticc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019101920191017
20544635888 100352 071452 101240 1608proticc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019101920191017
21647635688 100352 070028 101240 1576proticc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019101920191017
21651035688 100352 070028 101240 1576proticc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019101920191017
21652835688 100352 070028 101240 1576proticc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019101920191017
21665635688 100352 070028 101240 1576proticc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019101920191017
21672234512 100352 069252 101240 1576proticc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019101920191017
21680434512 100352 069252 101240 1576proticc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019101920191017
21702635760 100352 070260 101240 1576proticc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019101920191017
21727834400 100352 068868 101240 1576proticc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019101920191017
21744034400 100352 068868 101240 1576proticc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019101920191017
21749234512 100352 069252 101240 1576proticc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019101920191017
21755834049 98304 066459 99144 1608protgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
21763435760 100352 070260 101240 1576proticc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019101920191017
21770034512 100352 069252 101240 1576proticc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019101920191017
21824434400 100352 068868 101240 1576proticc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019101920191017
22048235760 100352 070260 101240 1576proticc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019101920191017
22051034400 100352 068868 101240 1576proticc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019101920191017
22654815739 98304 045451 99144 1608protgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
22920414240 98304 043355 99144 1608protgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
28024835760 100352 070260 101240 1576proticc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019101920191017

Test failure

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

Number of similar (compiler,implementation) pairs: 9, namely:
CompilerImplementations
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer opt
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer opt
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE prot
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer prot
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer prot
icc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer prot
icc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer prot
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer ref
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer ref

Compiler output

Implementation: prot
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
dh.c: In file included from dh.c:9:
dh.c: scmul.incl: In function 'scmul_rand_wreg':
dh.c: scmul.incl:273:17: warning: implicit declaration of function 'types_cond_copy2'; did you mean 'types_copy'? [-Wimplicit-function-declaration]
dh.c: 273 | types_cond_copy2(tab0, tab4, tabx, n1, n2);
dh.c: | ^~~~~~~~~~~~~~~~
dh.c: | types_copy
dh.c: scmul.incl:284:9: warning: implicit declaration of function 'types_cond_copy'; did you mean 'types_copy'? [-Wimplicit-function-declaration]
dh.c: 284 | types_cond_copy(QX, tab0, o1);
dh.c: | ^~~~~~~~~~~~~~~
dh.c: | types_copy

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

Compiler output

Implementation: prot
Security model: unknown
Compiler: icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer
dh.c: In file included from dh.c(9):
dh.c: scmul.incl(273): warning #266: function "types_cond_copy2" declared implicitly
dh.c: types_cond_copy2(tab0, tab4, tabx, n1, n2);
dh.c: ^
dh.c:
dh.c: In file included from dh.c(9):
dh.c: scmul.incl(284): warning #266: function "types_cond_copy" declared implicitly
dh.c: types_cond_copy(QX, tab0, o1);
dh.c: ^
dh.c:

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

Compiler output

Implementation: ref
Security model: unknown
Compiler: icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer
dh.c: In file included from dh.c(6):
dh.c: curves.incl(96): warning #266: function "rand" declared implicitly
dh.c: for (j=0;j<16;j++) { I[j] = rand() % 256; }
dh.c: ^
dh.c:
dh.c: In file included from dh.c(6):
dh.c: curves.incl(109): warning #266: function "rand" declared implicitly
dh.c: for (j=0;j<16;j++) { I[j] = rand() % 256; }
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