Implementation notes: amd64, beelink, crypto_sign/ed25519

Computer: beelink
Microarchitecture: amd64; Zen3 (a50f00)
Architecture: amd64
CPU ID: AuthenticAMD-00a50f00-178bfbff
SUPERCOP version: 20221122
Operation: crypto_sign
Primitive: ed25519
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
22387492683 0 0109509 844 1792amd64-64-24kgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
22425992434 0 0108717 844 1792amd64-64-24kgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
22428996353 0 0115216 884 1760amd64-64-24kclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
22443395935 0 0113909 844 1792amd64-64-24kgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
224777102252 0 0124208 884 1792amd64-64-24kclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
22521988648 0 0107446 876 1824amd64-64-24kclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
22567489222 0 0107016 884 1760amd64-64-24kclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
22706799688 0 0121616 884 1792amd64-64-24kclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
22893590656 0 0106829 836 1792amd64-64-24kgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
24274288233 0 0109880 884 1792amd64-51-30kclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
24281581450 0 0100320 884 1760amd64-51-30kclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
24369888270 0 0109880 884 1792amd64-51-30kclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
24376580997 0 098117 844 1792amd64-51-30kgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
24408578147 0 095600 884 1760amd64-51-30kclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
24412280643 0 097229 844 1792amd64-51-30kgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
24445877477 0 096094 876 1824amd64-51-30kclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
24660184694 0 0102949 844 1792amd64-51-30kgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
25096679530 0 095429 836 1792amd64-51-30kgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
51320256200 0 083606 876 1824ref10clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
51347963216 0 092101 844 1792ref10gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
51831862841 0 091920 884 1760ref10clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
52890169196 0 0102304 884 1792ref10clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
52969366978 0 0100048 884 1792ref10clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
53642061376 0 088373 844 1792ref10gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
54452258529 0 085376 884 1760ref10clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
54695858634 0 083461 836 1792ref10gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
54905761772 0 087797 844 1792ref10gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122

Compiler output

Implementation: amd64-64-24k
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
ge25519_scalarmult_base.c: ge25519_scalarmult_base.c: In function 'crypto_sign_ed25519_amd64_64_24k_constbranchindex_scalarmult_base':
ge25519_scalarmult_base.c: <command-line>: warning: 'crypto_sign_ed25519_amd64_64_24k_constbranchindex_sc25519_window4' accessing 85 bytes in a region of size 64 [-Wstringop-overflow=]
ge25519_scalarmult_base.c: <command-line>: note: in definition of macro 'CRYPTO_NAMESPACE'
ge25519_scalarmult_base.c: ge25519_scalarmult_base.c:24:3: note: in expansion of macro 'sc25519_window4'
ge25519_scalarmult_base.c: 24 | sc25519_window4(b,s);
ge25519_scalarmult_base.c: | ^~~~~~~~~~~~~~~
ge25519_scalarmult_base.c: <command-line>: note: referencing argument 1 of type 'signed char *'
ge25519_scalarmult_base.c: <command-line>: note: in definition of macro 'CRYPTO_NAMESPACE'
ge25519_scalarmult_base.c: ge25519_scalarmult_base.c:24:3: note: in expansion of macro 'sc25519_window4'
ge25519_scalarmult_base.c: 24 | sc25519_window4(b,s);
ge25519_scalarmult_base.c: | ^~~~~~~~~~~~~~~
ge25519_scalarmult_base.c: <command-line>: note: in a call to function 'crypto_sign_ed25519_amd64_64_24k_constbranchindex_sc25519_window4'
ge25519_scalarmult_base.c: <command-line>: note: in definition of macro 'CRYPTO_NAMESPACE'
ge25519_scalarmult_base.c: sc25519.h:58:6: note: in expansion of macro 'sc25519_window4'
ge25519_scalarmult_base.c: 58 | void sc25519_window4(signed char r[85], const sc25519 *s);
ge25519_scalarmult_base.c: | ^~~~~~~~~~~~~~~

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

Compiler output

Implementation: ref
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: /usr/bin/ld: libcrypto_sign_ed25519.a(open.o):(.rodata+0x0): multiple definition of `crypto_sign_ed25519_ref_constbranchindex_ge25519_base'; libcrypto_sign_ed25519.a(keypair.o):(.rodata+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_sign_ed25519.a(sign.o):(.rodata+0x0): multiple definition of `crypto_sign_ed25519_ref_constbranchindex_ge25519_base'; libcrypto_sign_ed25519.a(keypair.o):(.rodata+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_sign_ed25519.a(ge25519.o):(.rodata+0x0): multiple definition of `crypto_sign_ed25519_ref_constbranchindex_ge25519_base'; libcrypto_sign_ed25519.a(keypair.o):(.rodata+0x0): first defined here
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

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: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: libcrypto_sign_ed25519.a(open.o):(.rodata+0x0): multiple definition of `crypto_sign_ed25519_ref_constbranchindex_ge25519_base'; libcrypto_sign_ed25519.a(keypair.o):(.rodata+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_sign_ed25519.a(sign.o):(.rodata+0x0): multiple definition of `crypto_sign_ed25519_ref_constbranchindex_ge25519_base'; libcrypto_sign_ed25519.a(keypair.o):(.rodata+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_sign_ed25519.a(ge25519.o):(.rodata+0x1aa80): multiple definition of `crypto_sign_ed25519_ref_constbranchindex_ge25519_base'; libcrypto_sign_ed25519.a(keypair.o):(.rodata+0x0): first defined here
try.c: collect2: error: ld returned 1 exit status

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