Implementation notes: amd64, icelake2, crypto_sign/donald2048

Computer: icelake2
Architecture: amd64
CPU ID: GenuineIntel-000706e5-bfebfbff
SUPERCOP version: 20221005
Operation: crypto_sign
Primitive: donald2048
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
187250262540 16112 3921416955 157188 11424T:cryptoppclang++_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022100420220506
187473776003 10088 4401415480 151612 11616T:cryptoppg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022100420220506
187574948908 24176 4401389648 165612 11584T:cryptoppg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022100420220506
187771862868 12080 3921420375 153492 11488T:cryptoppclang++_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022100420220506
187777381662 9704 4401420838 151388 11616T:cryptoppg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022100420220506
187821759546 10080 4401399643 151612 11616T:cryptoppg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022100420220506
188245359265 12080 3921414355 153492 11456T:cryptoppclang++_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022100420220506
188513550091 12080 3921398219 153500 11488T:cryptoppclang++_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022100420220506

Compiler output

Implementation: T:openssl
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
keypair.c: keypair.c:12:7: warning: 'DSA_new' is deprecated [-Wdeprecated-declarations]
keypair.c: x = DSA_new();
keypair.c: ^
keypair.c: /usr/include/openssl/dsa.h:125:1: note: 'DSA_new' has been explicitly marked deprecated here
keypair.c: OSSL_DEPRECATEDIN_3_0 DSA *DSA_new(void);
keypair.c: ^
keypair.c: /usr/include/openssl/macros.h:182:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
keypair.c: # define OSSL_DEPRECATEDIN_3_0 OSSL_DEPRECATED(3.0)
keypair.c: ^
keypair.c: /usr/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
keypair.c: # define OSSL_DEPRECATED(since) __attribute__((deprecated))
keypair.c: ^
keypair.c: keypair.c:18:4: error: incomplete definition of type 'struct dsa_st'
keypair.c: x->p = BN_new(); if (!x->p) goto error;
keypair.c: ~^
keypair.c: /usr/include/openssl/types.h:138:16: note: forward declaration of 'struct dsa_st'
keypair.c: typedef struct dsa_st DSA;
keypair.c: ^
keypair.c: keypair.c:18:26: error: incomplete definition of type 'struct dsa_st'
keypair.c: x->p = BN_new(); if (!x->p) goto error;
keypair.c: ~^
keypair.c: /usr/include/openssl/types.h:138:16: note: forward declaration of 'struct dsa_st'
keypair.c: typedef struct dsa_st DSA;
keypair.c: ^
keypair.c: keypair.c:19:4: error: incomplete definition of type 'struct dsa_st'
keypair.c: ...

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

Compiler output

Implementation: T:openssl
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
keypair.c: keypair.c: In function 'crypto_sign_donald2048_openssl_timingleaks_keypair':
keypair.c: keypair.c:12:3: warning: 'DSA_new' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
keypair.c: 12 | x = DSA_new();
keypair.c: | ^
keypair.c: In file included from keypair.c:2:
keypair.c: /usr/include/openssl/dsa.h:125:28: note: declared here
keypair.c: 125 | OSSL_DEPRECATEDIN_3_0 DSA *DSA_new(void);
keypair.c: | ^~~~~~~
keypair.c: keypair.c:18:4: error: invalid use of incomplete typedef 'DSA' {aka 'struct dsa_st'}
keypair.c: 18 | x->p = BN_new(); if (!x->p) goto error;
keypair.c: | ^~
keypair.c: keypair.c:18:26: error: invalid use of incomplete typedef 'DSA' {aka 'struct dsa_st'}
keypair.c: 18 | x->p = BN_new(); if (!x->p) goto error;
keypair.c: | ^~
keypair.c: keypair.c:19:4: error: invalid use of incomplete typedef 'DSA' {aka 'struct dsa_st'}
keypair.c: 19 | x->q = BN_new(); if (!x->q) goto error;
keypair.c: | ^~
keypair.c: keypair.c:19:26: error: invalid use of incomplete typedef 'DSA' {aka 'struct dsa_st'}
keypair.c: 19 | x->q = BN_new(); if (!x->q) goto error;
keypair.c: | ^~
keypair.c: keypair.c:20:4: error: invalid use of incomplete typedef 'DSA' {aka 'struct dsa_st'}
keypair.c: 20 | x->g = BN_new(); if (!x->g) goto error;
keypair.c: | ^~
keypair.c: keypair.c:20:26: error: invalid use of incomplete typedef 'DSA' {aka 'struct dsa_st'}
keypair.c: 20 | x->g = BN_new(); if (!x->g) goto error;
keypair.c: ...

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

Compiler output

Implementation: T:opensslnew
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
keypair.c: keypair.c:20:7: warning: 'DSA_new' is deprecated [-Wdeprecated-declarations]
keypair.c: x = DSA_new(); if (!x) goto error;
keypair.c: ^
keypair.c: /usr/include/openssl/dsa.h:125:1: note: 'DSA_new' has been explicitly marked deprecated here
keypair.c: OSSL_DEPRECATEDIN_3_0 DSA *DSA_new(void);
keypair.c: ^
keypair.c: /usr/include/openssl/macros.h:182:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
keypair.c: # define OSSL_DEPRECATEDIN_3_0 OSSL_DEPRECATED(3.0)
keypair.c: ^
keypair.c: /usr/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
keypair.c: # define OSSL_DEPRECATED(since) __attribute__((deprecated))
keypair.c: ^
keypair.c: keypair.c:29:8: warning: 'DSA_set0_pqg' is deprecated [-Wdeprecated-declarations]
keypair.c: if (!DSA_set0_pqg(x,p,q,g)) goto error;
keypair.c: ^
keypair.c: /usr/include/openssl/dsa.h:203:1: note: 'DSA_set0_pqg' has been explicitly marked deprecated here
keypair.c: OSSL_DEPRECATEDIN_3_0 int DSA_set0_pqg(DSA *d, BIGNUM *p, BIGNUM *q, BIGNUM *g);
keypair.c: ^
keypair.c: /usr/include/openssl/macros.h:182:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
keypair.c: # define OSSL_DEPRECATEDIN_3_0 OSSL_DEPRECATED(3.0)
keypair.c: ^
keypair.c: /usr/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
keypair.c: # define OSSL_DEPRECATED(since) __attribute__((deprecated))
keypair.c: ^
keypair.c: keypair.c:32:8: warning: 'DSA_generate_key' is deprecated [-Wdeprecated-declarations]
keypair.c: ...

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

Compiler output

Implementation: T:opensslnew
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
keypair.c: keypair.c: In function 'crypto_sign_donald2048_opensslnew_timingleaks_keypair':
keypair.c: keypair.c:20:3: warning: 'DSA_new' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
keypair.c: 20 | x = DSA_new(); if (!x) goto error;
keypair.c: | ^
keypair.c: In file included from keypair.c:2:
keypair.c: /usr/include/openssl/dsa.h:125:28: note: declared here
keypair.c: 125 | OSSL_DEPRECATEDIN_3_0 DSA *DSA_new(void);
keypair.c: | ^~~~~~~
keypair.c: keypair.c:29:3: warning: 'DSA_set0_pqg' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
keypair.c: 29 | if (!DSA_set0_pqg(x,p,q,g)) goto error;
keypair.c: | ^~
keypair.c: /usr/include/openssl/dsa.h:203:27: note: declared here
keypair.c: 203 | OSSL_DEPRECATEDIN_3_0 int DSA_set0_pqg(DSA *d, BIGNUM *p, BIGNUM *q, BIGNUM *g);
keypair.c: | ^~~~~~~~~~~~
keypair.c: keypair.c:32:3: warning: 'DSA_generate_key' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
keypair.c: 32 | if (!DSA_generate_key(x)) goto error;
keypair.c: | ^~
keypair.c: /usr/include/openssl/dsa.h:174:27: note: declared here
keypair.c: 174 | OSSL_DEPRECATEDIN_3_0 int DSA_generate_key(DSA *a);
keypair.c: | ^~~~~~~~~~~~~~~~
keypair.c: keypair.c:34:3: warning: 'DSA_get0_pub_key' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
keypair.c: 34 | z = DSA_get0_pub_key(x);
keypair.c: | ^
keypair.c: /usr/include/openssl/dsa.h:211:37: note: declared here
keypair.c: 211 | OSSL_DEPRECATEDIN_3_0 const BIGNUM *DSA_get0_pub_key(const DSA *d);
keypair.c: ...

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