Implementation notes: amd64, cannon, crypto_scalarmult/curve25519

Computer: cannon
Architecture: amd64
CPU ID: GenuineIntel-00060663-bfebfbff
SUPERCOP version: 20190910
Operation: crypto_scalarmult
Primitive: curve25519
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
52442221183 0 047995 840 1608sandy2xclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
52548820835 0 043809 808 1608sandy2xgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
52721021183 0 047995 840 1608sandy2xclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
52803620940 0 047901 816 1640sandy2xgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
52981220977 0 044885 816 1640sandy2xgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
53058221090 0 044673 832 1576sandy2xclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
53081820930 0 045109 816 1640sandy2xgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
53514421183 0 048315 840 1608sandy2xclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
55724612054 0 039187 840 1608amd64-51clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
55731011040 0 037875 840 1608amd64-51clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
55907210641 0 034161 832 1576amd64-51clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
55950010888 0 034829 816 1640amd64-51gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
56036010798 0 037693 816 1640amd64-51gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
56069610782 0 034965 816 1640amd64-51gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
5632728861 0 035757 816 1640amd64-64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
5642428908 0 032853 816 1640amd64-64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
5650448744 0 032321 832 1576amd64-64clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
5655009121 0 035971 840 1608amd64-64clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
56599410592 0 033601 808 1608amd64-51gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
5676988815 0 031793 808 1608amd64-64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
5678249121 0 035971 840 1608amd64-64clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
5679528855 0 033037 816 1640amd64-64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
56821810119 0 037283 840 1608amd64-64clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
57359411040 0 037875 840 1608amd64-51clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
58332025932 0 052821 816 1640donna_c64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
63435420702 0 043641 808 1608donna_c64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
64220621905 0 046013 816 1640donna_c64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
66870823378 0 047253 816 1640donna_c64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
80484631315 0 058075 840 1608donna_c64clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
80501231315 0 058075 840 1608donna_c64clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
80513631315 0 058395 840 1608donna_c64clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
81699030136 0 053697 832 1576donna_c64clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
10318604686 0 031589 816 1640donnagcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
10520284959 0 031699 840 1608donnaclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
10547924657 0 028185 832 1576donnaclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
10567865896 0 032963 840 1608donnaclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
10572744959 0 031699 840 1608donnaclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
10799904521 0 027457 808 1608donnagcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
12908207483 0 034245 816 1640ref10gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
13813468175 0 034899 840 1608ref10clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
13917388282 0 031957 816 1640ref10gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
13920267763 0 031161 832 1576ref10clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
13944849165 0 036203 840 1608ref10clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
14049788175 0 034899 840 1608ref10clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
14373187971 0 031965 816 1640ref10gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
14540347798 0 030545 808 1608ref10gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
164932065688 0 032557 816 1640refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
2055568037393 0 064467 840 1608refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
2067209447413 0 074203 840 1608refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
2078408247413 0 074203 840 1608refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910
215660903398 0 027541 816 1640refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
227193183164 0 027077 816 1640refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
228260382726 0 025705 808 1608refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091120190910
228322583283 0 026825 832 1576refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019091120190910

Test failure

Implementation: donna
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
error 111

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

Compiler output

Implementation: donna_c64
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
smult.c: smult.c:149:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: 149 | fsquare_times(felem output, const felem in, limb count) {
smult.c: | ^~~~~~~~~~~~~
smult.c: smult.c:100:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: 100 | fmul(felem output, const felem in2, const felem in) {
smult.c: | ^~~~
smult.c: smult.c:70:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: 70 | fscalar_product(felem output, const felem in, const limb scalar) {
smult.c: | ^~~~~~~~~~~~~~~
smult.c: smult.c:56:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: 56 | fdifference_backwards(felem out, const felem in) {
smult.c: | ^~~~~~~~~~~~~~~~~~~~~
smult.c: smult.c:41:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: 41 | fsum(limb *output, const limb *in) {
smult.c: | ^~~~

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