Implementation notes: amd64, hertz, crypto_core/invsntrup761

Computer: hertz
Microarchitecture: amd64; Zen 4 (a60f12)
Architecture: amd64
CPU ID: AuthenticAMD-00a60f12-178bfbff
SUPERCOP version: 20240716
Operation: crypto_core
Primitive: invsntrup761
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
4561099377 0 028183 828 1032avxclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
4650729377 0 028071 828 1032avxclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
4836032695 0 015304 820 1032avxclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
4998574813 0 019181 804 1032avxgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
5047531925 0 014269 804 1000avxgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
5330001407 0 012452 788 968avxgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
32736295170 0 019607 812 1032refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
351501311487 0 030345 836 1032refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
356158511487 0 030233 836 1032refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
45673073017 0 015698 828 1032refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
397947621130 0 013535 812 1000refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
49264467941 0 012022 796 968refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716

Compiler output


avx-768.c: avx-768.c:586:35: warning: unused variable 'h0' [-Wunused-variable]
avx-768.c:   586 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                   ^~
avx-768.c: avx-768.c:586:41: warning: unused variable 'h2' [-Wunused-variable]
avx-768.c:   586 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                         ^~
avx-768.c: avx-768.c:586:44: warning: unused variable 'h3' [-Wunused-variable]
avx-768.c:   586 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                            ^~
avx-768.c: avx-768.c:716:35: warning: unused variable 'h0' [-Wunused-variable]
avx-768.c:   716 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                   ^~
avx-768.c: avx-768.c:716:38: warning: unused variable 'h1' [-Wunused-variable]
avx-768.c:   716 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                      ^~
avx-768.c: avx-768.c:716:41: warning: unused variable 'h2' [-Wunused-variable]
avx-768.c:   716 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                         ^~
avx-768.c: avx-768.c:716:44: warning: unused variable 'h3' [-Wunused-variable]
avx-768.c:   716 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                            ^~
avx-768.c: avx-768.c:847:35: warning: unused variable 'h0' [-Wunused-variable]
avx-768.c:   847 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                   ^~
avx-768.c: avx-768.c:847:38: warning: unused variable 'h1' [-Wunused-variable]
avx-768.c: ...

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

Compiler output


avx-768.c: avx-768.c: In function 'ntt64':
avx-768.c: avx-768.c:586:44: warning: unused variable 'h3' [-Wunused-variable]
avx-768.c:   586 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                            ^~
avx-768.c: avx-768.c:586:41: warning: unused variable 'h2' [-Wunused-variable]
avx-768.c:   586 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                         ^~
avx-768.c: avx-768.c:586:35: warning: unused variable 'h0' [-Wunused-variable]
avx-768.c:   586 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                   ^~
avx-768.c: avx-768.c: In function 'invntt64':
avx-768.c: avx-768.c:716:44: warning: unused variable 'h3' [-Wunused-variable]
avx-768.c:   716 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                            ^~
avx-768.c: avx-768.c:716:41: warning: unused variable 'h2' [-Wunused-variable]
avx-768.c:   716 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                         ^~
avx-768.c: avx-768.c:716:38: warning: unused variable 'h1' [-Wunused-variable]
avx-768.c:   716 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                      ^~
avx-768.c: avx-768.c:716:35: warning: unused variable 'h0' [-Wunused-variable]
avx-768.c:   716 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                   ^~
avx-768.c: avx-768.c: In function 'ntt256':
avx-768.c: avx-768.c:847:44: warning: unused variable 'h3' [-Wunused-variable]
avx-768.c: ...

Number of similar (implementation,compiler) pairs: 2, namely:
ImplementationCompiler
jumpdivstepsgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)
jumpdivstepsgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)

Compiler output


avx-768.c: avx-768.c: In function 'ntt64':
avx-768.c: avx-768.c:586:44: warning: unused variable 'h3' [-Wunused-variable]
avx-768.c:   586 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                            ^~
avx-768.c: avx-768.c:586:41: warning: unused variable 'h2' [-Wunused-variable]
avx-768.c:   586 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                         ^~
avx-768.c: avx-768.c:586:35: warning: unused variable 'h0' [-Wunused-variable]
avx-768.c:   586 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                   ^~
avx-768.c: avx-768.c: In function 'invntt64':
avx-768.c: avx-768.c:716:44: warning: unused variable 'h3' [-Wunused-variable]
avx-768.c:   716 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                            ^~
avx-768.c: avx-768.c:716:41: warning: unused variable 'h2' [-Wunused-variable]
avx-768.c:   716 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                         ^~
avx-768.c: avx-768.c:716:38: warning: unused variable 'h1' [-Wunused-variable]
avx-768.c:   716 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                      ^~
avx-768.c: avx-768.c:716:35: warning: unused variable 'h0' [-Wunused-variable]
avx-768.c:   716 |   __m256i f0,f1,f2,f3,g0,g1,g2,g3,h0,h1,h2,h3;
avx-768.c:       |                                   ^~
avx-768.c: avx-768.c: In function 'ntt256':
avx-768.c: avx-768.c:847:44: warning: unused variable 'h3' [-Wunused-variable]
avx-768.c: ...
avx.c: avx.c:106:42: warning: argument 1 of type 'int16x16[1]' {aka '__m256i[1]'} with mismatched bound [-Warray-parameter=]
avx.c:   106 | inline void mult1_over65536_x16(int16x16 h[1],const int16x16 f[1],const int16x16 g[1])
avx.c:       |                                 ~~~~~~~~~^~~~
avx.c: In file included from avx.c:5:
avx.c: avx.h:43:33: note: previously declared as 'int16x16 *' {aka '__m256i *'}
avx.c:    43 | extern void mult1_over65536_x16(int16x16 *,const int16x16 *,const int16x16 *);
avx.c:       |                                 ^~~~~~~~~~
avx.c: avx.c:106:62: warning: argument 2 of type 'const int16x16[1]' {aka 'const __m256i[1]'} with mismatched bound [-Warray-parameter=]
avx.c:   106 | inline void mult1_over65536_x16(int16x16 h[1],const int16x16 f[1],const int16x16 g[1])
avx.c:       |                                               ~~~~~~~~~~~~~~~^~~~
avx.c: avx.h:43:44: note: previously declared as 'const int16x16 *' {aka 'const __m256i *'}
avx.c:    43 | extern void mult1_over65536_x16(int16x16 *,const int16x16 *,const int16x16 *);
avx.c:       |                                            ^~~~~~~~~~~~~~~~
avx.c: avx.c:106:82: warning: argument 3 of type 'const int16x16[1]' {aka 'const __m256i[1]'} with mismatched bound [-Warray-parameter=]
avx.c:   106 | inline void mult1_over65536_x16(int16x16 h[1],const int16x16 f[1],const int16x16 g[1])
avx.c:       |                                                                   ~~~~~~~~~~~~~~~^~~~
avx.c: avx.h:43:61: note: previously declared as 'const int16x16 *' {aka 'const __m256i *'}
avx.c:    43 | extern void mult1_over65536_x16(int16x16 *,const int16x16 *,const int16x16 *);
avx.c:       |                                                             ^~~~~~~~~~~~~~~~
avx.c: avx.c:128:42: warning: argument 1 of type 'int16x16[3]' {aka '__m256i[3]'} with mismatched bound [-Warray-parameter=]
avx.c:   128 | inline void mult2_over65536_x16(int16x16 h[3],const int16x16 f[2],const int16x16 g[2])
avx.c:       |                                 ~~~~~~~~~^~~~
avx.c: avx.h:44:33: note: previously declared as 'int16x16 *' {aka '__m256i *'}
avx.c:    44 | extern void mult2_over65536_x16(int16x16 *,const int16x16 *,const int16x16 *);
avx.c:       |                                 ^~~~~~~~~~
avx.c: ...

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

TIMECOP error (can be valgrind bug)


error 111

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x10AB46
   at 0x...: core (try-anything.c:61)
   by 0x...: salsa20 (try-anything.c:89)
   by 0x...: canary (try-anything.c:148)
   by 0x...: output_prepare (try-anything.c:178)
   by 0x...: test (try.c:99)
   by 0x...: main (try-anything.c:345)

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

TIMECOP error (can be valgrind bug)


error 111

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x10B664
   at 0x...: salsa20 (try-anything.c:90)
   by 0x...: canary (try-anything.c:148)
   by 0x...: output_prepare (try-anything.c:178)
   by 0x...: test (try.c:99)
   by 0x...: main (try-anything.c:345)

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

TIMECOP error (can be valgrind bug)


error 111

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x109D06
   at 0x...: core (try-anything.c:64)
   by 0x...: salsa20 (try-anything.c:89)
   by 0x...: canary (try-anything.c:148)
   by 0x...: output_prepare (try-anything.c:178)
   by 0x...: test (try.c:99)
   by 0x...: main (try-anything.c:345)

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

TIMECOP error (can be valgrind bug)


error 111

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x109CA7
   at 0x...: core (try-anything.c:68)
   by 0x...: salsa20.part.0 (try-anything.c:89)
   by 0x...: salsa20 (try-anything.c:85)
   by 0x...: canary (try-anything.c:148)
   by 0x...: output_prepare (try-anything.c:178)
   by 0x...: test (try.c:99)
   by 0x...: main (try-anything.c:345)

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

TIMECOP error (can be valgrind bug)


error 111

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x109CFC
   at 0x...: core (try-anything.c:64)
   by 0x...: salsa20.part.0 (try-anything.c:89)
   by 0x...: salsa20 (try-anything.c:85)
   by 0x...: canary (try-anything.c:148)
   by 0x...: output_prepare (try-anything.c:178)
   by 0x...: test (try.c:99)
   by 0x...: main (try-anything.c:345)

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

TIMECOP error (can be valgrind bug)


error 111

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x109B7E
   at 0x...: core (try-anything.c:64)
   by 0x...: salsa20.part.0 (try-anything.c:89)
   by 0x...: salsa20 (try-anything.c:85)
   by 0x...: canary (try-anything.c:148)
   by 0x...: output_prepare (try-anything.c:178)
   by 0x...: test (try.c:99)
   by 0x...: main (try-anything.c:345)

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

TIMECOP error (can be valgrind bug)


error 111

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x10AB56
   at 0x...: core (try-anything.c:61)
   by 0x...: salsa20 (try-anything.c:89)
   by 0x...: canary (try-anything.c:148)
   by 0x...: output_prepare (try-anything.c:178)
   by 0x...: test (try.c:99)
   by 0x...: main (try-anything.c:345)

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

TIMECOP error (can be valgrind bug)


error 111

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x10B674
   at 0x...: salsa20 (try-anything.c:90)
   by 0x...: canary (try-anything.c:148)
   by 0x...: output_prepare (try-anything.c:178)
   by 0x...: test (try.c:99)
   by 0x...: main (try-anything.c:345)

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

TIMECOP error (can be valgrind bug)


error 111

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x109D16
   at 0x...: core (try-anything.c:64)
   by 0x...: salsa20 (try-anything.c:89)
   by 0x...: canary (try-anything.c:148)
   by 0x...: output_prepare (try-anything.c:178)
   by 0x...: test (try.c:99)
   by 0x...: main (try-anything.c:345)

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

TIMECOP error (can be valgrind bug)


error 111

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x109CB7
   at 0x...: core (try-anything.c:68)
   by 0x...: salsa20.part.0 (try-anything.c:89)
   by 0x...: salsa20 (try-anything.c:85)
   by 0x...: canary (try-anything.c:148)
   by 0x...: output_prepare (try-anything.c:178)
   by 0x...: test (try.c:99)
   by 0x...: main (try-anything.c:345)

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

TIMECOP error (can be valgrind bug)


error 111

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x109D0C
   at 0x...: core (try-anything.c:64)
   by 0x...: salsa20.part.0 (try-anything.c:89)
   by 0x...: salsa20 (try-anything.c:85)
   by 0x...: canary (try-anything.c:148)
   by 0x...: output_prepare (try-anything.c:178)
   by 0x...: test (try.c:99)
   by 0x...: main (try-anything.c:345)

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

TIMECOP error (can be valgrind bug)


error 111

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x109B8E
   at 0x...: core (try-anything.c:64)
   by 0x...: salsa20.part.0 (try-anything.c:89)
   by 0x...: salsa20 (try-anything.c:85)
   by 0x...: canary (try-anything.c:148)
   by 0x...: output_prepare (try-anything.c:178)
   by 0x...: test (try.c:99)
   by 0x...: main (try-anything.c:345)

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