Implementation notes: amd64, genji262, crypto_sign/dilithium2

Computer: genji262
Architecture: amd64
CPU ID: AuthenticAMD-00800f12-178bfbff
SUPERCOP version: 20191017
Operation: crypto_sign
Primitive: dilithium2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
943778228824 0 0255499 816 1632avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
1033912236419 0 0266956 864 1600avx2icc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
1035562236435 0 0266972 864 1600avx2icc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
1036024236435 0 0266972 864 1600avx2icc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
1036178236419 0 0266956 864 1600avx2icc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
1038070244787 0 0273644 864 1600avx2icc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102420191017
1075954250491 0 0280628 864 1600avx2icc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
1080904249931 0 0280068 864 1600avx2icc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
1083742249931 0 0280068 864 1600avx2icc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
1084710259115 0 0288028 864 1600avx2icc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102420191017
1089660250491 0 0280628 864 1600avx2icc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
1134584129939 0 0155243 816 1632avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
1163448246659 0 0276812 864 1600avx2icc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
1164174246659 0 0276812 864 1600avx2icc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
1164834246659 0 0276812 864 1600avx2icc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
1168574127970 0 0153011 816 1632avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
1172490246659 0 0276812 864 1600avx2icc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
1188396261067 0 0291252 864 1600avx2icc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
1193214261067 0 0291252 864 1600avx2icc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
1199176261067 0 0291252 864 1600avx2icc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
1199352261067 0 0291252 864 1600avx2icc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
1207162125201 0 0149531 808 1600avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
202886234223 0 061337 808 1600refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
217344645064 0 071971 816 1632refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
229101469976 0 0100780 864 1600reficc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
229867069976 0 0100780 864 1600reficc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
232480619100 0 044643 816 1632refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
233488236043 0 062857 808 1600refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
247231666768 0 095892 864 1600reficc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102420191017
247414269960 0 0100764 864 1600reficc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
248448269960 0 0100764 864 1600reficc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
250973817991 0 043235 816 1632refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
252544674088 0 0104492 864 1600reficc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
252870274088 0 0104492 864 1600reficc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
253902073976 0 0104380 864 1600reficc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
254562073976 0 0104380 864 1600reficc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
261525070888 0 0100068 864 1600reficc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102420191017
261883626981 0 053481 808 1600refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
262152026981 0 053481 808 1600refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
269909218223 0 042215 800 1600refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
276958068680 0 099100 864 1600reficc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
277307868680 0 099100 864 1600reficc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
277435468680 0 099100 864 1600reficc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
278988668680 0 099100 864 1600reficc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
287269416886 0 041043 808 1600refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
298130872792 0 0103244 864 1600reficc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
298377272792 0 0103244 864 1600reficc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
298797472792 0 0103244 864 1600reficc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
298828272792 0 0103244 864 1600reficc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017

Test failure

Implementation: avx2
Security model: unknown
Compiler: icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer avx2
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer avx2
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer avx2
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer avx2
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer avx2
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer avx2
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer ref
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer ref
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer ref
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer ref
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer ref
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer ref

Compiler output

Implementation: avx2
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
KeccakP-1600-times4-SIMD256.c: In file included from KeccakP-1600-times4-SIMD256.c:19:
KeccakP-1600-times4-SIMD256.c: In file included from /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/smmintrin.h:32:
KeccakP-1600-times4-SIMD256.c: In file included from /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/tmmintrin.h:31:
KeccakP-1600-times4-SIMD256.c: In file included from /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/pmmintrin.h:31:
KeccakP-1600-times4-SIMD256.c: In file included from /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/emmintrin.h:31:
KeccakP-1600-times4-SIMD256.c: In file included from /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/xmmintrin.h:31:
KeccakP-1600-times4-SIMD256.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:55:72: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
KeccakP-1600-times4-SIMD256.c: extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:61:72: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
KeccakP-1600-times4-SIMD256.c: extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:68:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
KeccakP-1600-times4-SIMD256.c: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:74:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
KeccakP-1600-times4-SIMD256.c: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:84:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
KeccakP-1600-times4-SIMD256.c: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:90:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
KeccakP-1600-times4-SIMD256.c: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:97:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
KeccakP-1600-times4-SIMD256.c: ...

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