Test results for amd64, hertz, crypto_sign/dilithium2aes

[Page version: 20260219 16:18:58]

Measurements for amd64, hertz, crypto_sign Test results for amd64, hertz, crypto_sign Test results for crypto_sign/dilithium2aes
Computer: hertz
Microarchitecture: amd64; Zen 4 (a60f12)
Architecture: amd64
CPU ID: AuthenticAMD-00a60f12-178bfbff
SUPERCOP version: 20260217
Operation: crypto_sign
Primitive: dilithium2aes
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
19298888765 0 0128482 1272 2416avx2clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026021820260217
19374782318 0 0120826 1272 2416avx2clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026021820260217
20635659359 0 092220 1264 2416avx2clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026021820260217
20833174006 0 0110949 1240 2512avx2gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026021820260217
21150954960 0 088685 1240 2512avx2gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026021820260217
21337250059 0 081941 1232 2416avx2gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026021820260217
215620452070 0 089069 1240 2512refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026021820260217
232332163476 0 0103594 1272 2416refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026021820260217
236008757944 0 096514 1272 2416refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026021820260217
237227428021 0 061765 1240 2512refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026021820260217
244194324238 0 057732 1264 2416refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026021820260217
298046923592 0 055477 1232 2416refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026021820260217

Compiler output


rejsample.c: rejsample.c:316:62: warning: argument 'buf' of type 'const uint8_t[192]' (aka 'const unsigned char[192]') with mismatched bound [-Warray-parameter]
rejsample.c:   316 | unsigned int rej_eta_avx(int32_t * restrict r, const uint8_t buf[REJ_UNIFORM_ETA_BUFLEN]) {
rejsample.c:       |                                                              ^
rejsample.c: ./rejsample.h:25:52: note: previously declared as 'const uint8_t[768]' (aka 'const unsigned char[768]') here
rejsample.c:    25 | unsigned int rej_eta_avx(int32_t *r, const uint8_t buf[REJ_UNIFORM_BUFLEN]);
rejsample.c:       |                                                    ^
rejsample.c: 1 warning generated.

Number of similar (implementation,compiler) pairs: 3, namely:
ImplementationCompiler
avx2clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.8_(1ubuntu1))
avx2clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.8_(1ubuntu1))
avx2clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.8_(1ubuntu1))

Compiler output


polyvec.c: polyvec.c: In function 'crypto_sign_dilithium2aes_avx2_constbranchindex_polyvecl_uniform_gamma1':
polyvec.c: <command-line>: warning: 'crypto_sign_dilithium2aes_avx2_constbranchindex_poly_uniform_gamma1' reading 48 bytes from a region of size 32 [-Wstringop-overread]
polyvec.c: config.h:4:32: note: in expansion of macro 'CRYPTO_NAMESPACE'
polyvec.c:     4 | #define DILITHIUM_NAMESPACE(s) CRYPTO_NAMESPACE(s)
polyvec.c:       |                                ^~~~~~~~~~~~~~~~
polyvec.c: poly.h:55:29: note: in expansion of macro 'DILITHIUM_NAMESPACE'
polyvec.c:    55 | #define poly_uniform_gamma1 DILITHIUM_NAMESPACE(poly_uniform_gamma1)
polyvec.c:       |                             ^~~~~~~~~~~~~~~~~~~
polyvec.c: polyvec.c:279:5: note: in expansion of macro 'poly_uniform_gamma1'
polyvec.c:   279 |     poly_uniform_gamma1(&v->vec[i], seed, L*nonce + i);
polyvec.c:       |     ^~~~~~~~~~~~~~~~~~~
polyvec.c: <command-line>: note: referencing argument 2 of type 'const uint8_t[48]' {aka 'const unsigned char[48]'}
polyvec.c: config.h:4:32: note: in expansion of macro 'CRYPTO_NAMESPACE'
polyvec.c:     4 | #define DILITHIUM_NAMESPACE(s) CRYPTO_NAMESPACE(s)
polyvec.c:       |                                ^~~~~~~~~~~~~~~~
polyvec.c: poly.h:55:29: note: in expansion of macro 'DILITHIUM_NAMESPACE'
polyvec.c:    55 | #define poly_uniform_gamma1 DILITHIUM_NAMESPACE(poly_uniform_gamma1)
polyvec.c:       |                             ^~~~~~~~~~~~~~~~~~~
polyvec.c: polyvec.c:279:5: note: in expansion of macro 'poly_uniform_gamma1'
polyvec.c:   279 |     poly_uniform_gamma1(&v->vec[i], seed, L*nonce + i);
polyvec.c:       |     ^~~~~~~~~~~~~~~~~~~
polyvec.c: <command-line>: note: in a call to function 'crypto_sign_dilithium2aes_avx2_constbranchindex_poly_uniform_gamma1'
polyvec.c: config.h:4:32: note: in expansion of macro 'CRYPTO_NAMESPACE'
polyvec.c:     4 | #define DILITHIUM_NAMESPACE(s) CRYPTO_NAMESPACE(s)
polyvec.c:       |                                ^~~~~~~~~~~~~~~~
polyvec.c: ...
rejsample.c: rejsample.c:316:62: warning: argument 2 of type 'const uint8_t[192]' {aka 'const unsigned char[192]'} with mismatched bound [-Warray-parameter=]
rejsample.c:   316 | unsigned int rej_eta_avx(int32_t * restrict r, const uint8_t buf[REJ_UNIFORM_ETA_BUFLEN]) {
rejsample.c:       |                                                ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
rejsample.c: In file included from rejsample.c:4:
rejsample.c: rejsample.h:25:52: note: previously declared as 'const uint8_t[768]' {aka 'const unsigned char[768]'}
rejsample.c:    25 | unsigned int rej_eta_avx(int32_t *r, const uint8_t buf[REJ_UNIFORM_BUFLEN]);
rejsample.c:       |                                      ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~

Number of similar (implementation,compiler) pairs: 3, namely:
ImplementationCompiler
avx2gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0)
avx2gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0)
avx2gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0)

Compiler output


aes256ctr.c: aes256ctr.c:557:64: warning: argument 3 of type 'const uint8_t *' {aka 'const unsigned char *'} declared as a pointer [-Warray-parameter=]
aes256ctr.c:   557 | void aes256ctr_prf(uint8_t *out, size_t outlen, const uint8_t *key, const uint8_t *nonce)
aes256ctr.c:       |                                                 ~~~~~~~~~~~~~~~^~~
aes256ctr.c: In file included from aes256ctr.c:27:
aes256ctr.c: aes256ctr.h:21:34: note: previously declared as an array 'const uint8_t[32]' {aka 'const unsigned char[32]'}
aes256ctr.c:    21 |                    const uint8_t key[32],
aes256ctr.c:       |                    ~~~~~~~~~~~~~~^~~~~~~
aes256ctr.c: aes256ctr.c:557:84: warning: argument 4 of type 'const uint8_t *' {aka 'const unsigned char *'} declared as a pointer [-Warray-parameter=]
aes256ctr.c:   557 | void aes256ctr_prf(uint8_t *out, size_t outlen, const uint8_t *key, const uint8_t *nonce)
aes256ctr.c:       |                                                                     ~~~~~~~~~~~~~~~^~~~~
aes256ctr.c: aes256ctr.h:22:34: note: previously declared as an array 'const uint8_t[12]' {aka 'const unsigned char[12]'}
aes256ctr.c:    22 |                    const uint8_t nonce[12]);
aes256ctr.c:       |                    ~~~~~~~~~~~~~~^~~~~~~~~
aes256ctr.c: aes256ctr.c:565:54: warning: argument 2 of type 'const uint8_t *' {aka 'const unsigned char *'} declared as a pointer [-Warray-parameter=]
aes256ctr.c:   565 | void aes256ctr_init(aes256ctr_ctx *s, const uint8_t *key, const uint8_t *nonce)
aes256ctr.c:       |                                       ~~~~~~~~~~~~~~~^~~
aes256ctr.c: aes256ctr.h:26:35: note: previously declared as an array 'const uint8_t[32]' {aka 'const unsigned char[32]'}
aes256ctr.c:    26 |                     const uint8_t key[32],
aes256ctr.c:       |                     ~~~~~~~~~~~~~~^~~~~~~
aes256ctr.c: aes256ctr.c:565:74: warning: argument 3 of type 'const uint8_t *' {aka 'const unsigned char *'} declared as a pointer [-Warray-parameter=]
aes256ctr.c:   565 | void aes256ctr_init(aes256ctr_ctx *s, const uint8_t *key, const uint8_t *nonce)
aes256ctr.c:       |                                                           ~~~~~~~~~~~~~~~^~~~~
aes256ctr.c: aes256ctr.h:27:35: note: previously declared as an array 'const uint8_t[12]' {aka 'const unsigned char[12]'}
aes256ctr.c:    27 |                     const uint8_t nonce[12]);
aes256ctr.c:       |                     ~~~~~~~~~~~~~~^~~~~~~~~
aes256ctr.c: ...
polyvec.c: polyvec.c: In function 'crypto_sign_dilithium2aes_ref_constbranchindex_polyvecl_uniform_gamma1':
polyvec.c: <command-line>: warning: 'crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform_gamma1' reading 48 bytes from a region of size 32 [-Wstringop-overread]
polyvec.c: config.h:4:32: note: in expansion of macro 'CRYPTO_NAMESPACE'
polyvec.c:     4 | #define DILITHIUM_NAMESPACE(s) CRYPTO_NAMESPACE(s)
polyvec.c:       |                                ^~~~~~~~~~~~~~~~
polyvec.c: poly.h:51:29: note: in expansion of macro 'DILITHIUM_NAMESPACE'
polyvec.c:    51 | #define poly_uniform_gamma1 DILITHIUM_NAMESPACE(poly_uniform_gamma1)
polyvec.c:       |                             ^~~~~~~~~~~~~~~~~~~
polyvec.c: polyvec.c:47:5: note: in expansion of macro 'poly_uniform_gamma1'
polyvec.c:    47 |     poly_uniform_gamma1(&v->vec[i], seed, L*nonce + i);
polyvec.c:       |     ^~~~~~~~~~~~~~~~~~~
polyvec.c: <command-line>: note: referencing argument 2 of type 'const uint8_t[48]' {aka 'const unsigned char[48]'}
polyvec.c: config.h:4:32: note: in expansion of macro 'CRYPTO_NAMESPACE'
polyvec.c:     4 | #define DILITHIUM_NAMESPACE(s) CRYPTO_NAMESPACE(s)
polyvec.c:       |                                ^~~~~~~~~~~~~~~~
polyvec.c: poly.h:51:29: note: in expansion of macro 'DILITHIUM_NAMESPACE'
polyvec.c:    51 | #define poly_uniform_gamma1 DILITHIUM_NAMESPACE(poly_uniform_gamma1)
polyvec.c:       |                             ^~~~~~~~~~~~~~~~~~~
polyvec.c: polyvec.c:47:5: note: in expansion of macro 'poly_uniform_gamma1'
polyvec.c:    47 |     poly_uniform_gamma1(&v->vec[i], seed, L*nonce + i);
polyvec.c:       |     ^~~~~~~~~~~~~~~~~~~
polyvec.c: <command-line>: note: in a call to function 'crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform_gamma1'
polyvec.c: config.h:4:32: note: in expansion of macro 'CRYPTO_NAMESPACE'
polyvec.c:     4 | #define DILITHIUM_NAMESPACE(s) CRYPTO_NAMESPACE(s)
polyvec.c:       |                                ^~~~~~~~~~~~~~~~
polyvec.c: ...

Number of similar (implementation,compiler) pairs: 3, namely:
ImplementationCompiler
refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0)
refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0)
refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0)

TIMECOP error (can be valgrind bug)


error 132

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x4017D18
   at 0x...: memset (string_fortified.h:59)
   by 0x...: cpucycles_works (wrapper.c:50)
   by 0x...: supercop_cpucycles_ticks_amd64_tsc_setup (amd64-tsc.c:28)
   by 0x...: cpucycles_init (wrapper.c:308)
   by 0x...: main (try-anything.c:330)
Illegal instruction (core dumped)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
avx2clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.8_(1ubuntu1))

TIMECOP error (can be valgrind bug)


error 132

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x4019718
   at 0x...: memset (string_fortified.h:59)
   by 0x...: cpucycles_works (wrapper.c:50)
   by 0x...: supercop_cpucycles_ticks_amd64_tsc_setup (amd64-tsc.c:28)
   by 0x...: cpucycles_init (wrapper.c:308)
   by 0x...: main (try-anything.c:330)
Illegal instruction (core dumped)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
avx2clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.8_(1ubuntu1))

TIMECOP error (can be valgrind bug)


error 132

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x4012158
   at 0x...: memset (string_fortified.h:59)
   by 0x...: cpucycles_works (wrapper.c:50)
   by 0x...: supercop_cpucycles_ticks_amd64_tsc_setup (amd64-tsc.c:28)
   by 0x...: cpucycles_init (wrapper.c:308)
   by 0x...: main (try-anything.c:330)
Illegal instruction (core dumped)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
avx2clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.8_(1ubuntu1))

TIMECOP error (can be valgrind bug)


error 132

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x4011C18
   at 0x...: memset (string_fortified.h:59)
   by 0x...: cpucycles_works (wrapper.c:50)
   by 0x...: supercop_cpucycles_ticks_amd64_tsc_setup (amd64-tsc.c:28)
   by 0x...: cpucycles_init (wrapper.c:308)
   by 0x...: main (try-anything.c:330)
Illegal instruction (core dumped)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
avx2gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0)

TIMECOP error (can be valgrind bug)


error 132

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x4016858
   at 0x...: memset (string_fortified.h:59)
   by 0x...: cpucycles_works (wrapper.c:50)
   by 0x...: supercop_cpucycles_ticks_amd64_tsc_setup (amd64-tsc.c:28)
   by 0x...: cpucycles_init (wrapper.c:308)
   by 0x...: main (try-anything.c:330)
Illegal instruction (core dumped)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
avx2gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0)

TIMECOP error (can be valgrind bug)


error 132

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x40101D8
   at 0x...: memset (string_fortified.h:59)
   by 0x...: cpucycles_works (wrapper.c:50)
   by 0x...: supercop_cpucycles_ticks_amd64_tsc_setup (amd64-tsc.c:28)
   by 0x...: cpucycles_init (wrapper.c:308)
   by 0x...: main (try-anything.c:330)
Illegal instruction (core dumped)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
avx2gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0)

TIMECOP error (can be valgrind bug)


error 132

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x4012018
   at 0x...: memset (string_fortified.h:59)
   by 0x...: cpucycles_works (wrapper.c:50)
   by 0x...: supercop_cpucycles_ticks_amd64_tsc_setup (amd64-tsc.c:28)
   by 0x...: cpucycles_init (wrapper.c:308)
   by 0x...: main (try-anything.c:330)
Illegal instruction (core dumped)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.8_(1ubuntu1))

TIMECOP error (can be valgrind bug)


error 132

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x4013798
   at 0x...: memset (string_fortified.h:59)
   by 0x...: cpucycles_works (wrapper.c:50)
   by 0x...: supercop_cpucycles_ticks_amd64_tsc_setup (amd64-tsc.c:28)
   by 0x...: cpucycles_init (wrapper.c:308)
   by 0x...: main (try-anything.c:330)
Illegal instruction (core dumped)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.8_(1ubuntu1))

TIMECOP error (can be valgrind bug)


error 132

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x400A798
   at 0x...: memset (string_fortified.h:59)
   by 0x...: cpucycles_works (wrapper.c:50)
   by 0x...: supercop_cpucycles_ticks_amd64_tsc_setup (amd64-tsc.c:28)
   by 0x...: cpucycles_init (wrapper.c:308)
   by 0x...: main (try-anything.c:330)
Illegal instruction (core dumped)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.8_(1ubuntu1))

TIMECOP error (can be valgrind bug)


error 132

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x400BCD8
   at 0x...: memset (string_fortified.h:59)
   by 0x...: cpucycles_works (wrapper.c:50)
   by 0x...: supercop_cpucycles_ticks_amd64_tsc_setup (amd64-tsc.c:28)
   by 0x...: cpucycles_init (wrapper.c:308)
   by 0x...: main (try-anything.c:330)
Illegal instruction (core dumped)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0)

TIMECOP error (can be valgrind bug)


error 132

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x4011D18
   at 0x...: memset (string_fortified.h:59)
   by 0x...: cpucycles_works (wrapper.c:50)
   by 0x...: supercop_cpucycles_ticks_amd64_tsc_setup (amd64-tsc.c:28)
   by 0x...: cpucycles_init (wrapper.c:308)
   by 0x...: main (try-anything.c:330)
Illegal instruction (core dumped)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0)

TIMECOP error (can be valgrind bug)


error 132

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x400A6D8
   at 0x...: memset (string_fortified.h:59)
   by 0x...: cpucycles_works (wrapper.c:50)
   by 0x...: supercop_cpucycles_ticks_amd64_tsc_setup (amd64-tsc.c:28)
   by 0x...: cpucycles_init (wrapper.c:308)
   by 0x...: main (try-anything.c:330)
Illegal instruction (core dumped)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0)