Implementation notes: amd64, genji346, crypto_kem/mceliece348864

Computer: genji346
Architecture: amd64
CPU ID: AuthenticAMD-00830f10-178bfbff
SUPERCOP version: 20191017
Operation: crypto_kem
Primitive: mceliece348864
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
174520127056 0 0176309 840 1608avxgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
19620063434 0 0111285 840 1608avxgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
222240258658 0 0296077 840 1608ssegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
24628063770 0 099581 840 1608ssegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
25634061889 0 097509 840 1608ssegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
27790058147 0 092773 832 1576ssegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
42586061838 0 0109461 840 1608avxgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
43488058062 0 0104749 832 1576avxgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
486220132152 0 0172556 880 1576vecicc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102520191017
487580130280 0 0171948 880 1576vecicc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102520191017
487620130280 0 0171948 880 1576vecicc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102520191017
488180125568 0 0167300 880 1576vecicc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102520191017
488580125568 0 0167300 880 1576vecicc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102520191017
489300130280 0 0171948 880 1576vecicc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102520191017
489440130280 0 0171948 880 1576vecicc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102520191017
490060125568 0 0167300 880 1576vecicc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102520191017
503180126784 0 0167212 880 1576vecicc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102520191017
505600125568 0 0167300 880 1576vecicc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102520191017
67408064252 0 0102167 832 1576vecclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
676160243155 0 0281253 840 1608vecgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
67948064252 0 0102167 832 1576vecclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
688420108384 0 0149924 880 1576vecicc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102520191017
688520108400 0 0149988 880 1576vecicc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102520191017
690180108384 0 0149924 880 1576vecicc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102520191017
691620108400 0 0149988 880 1576vecicc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102520191017
699420108464 0 0150452 880 1576vecicc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102520191017
699560108464 0 0150452 880 1576vecicc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102520191017
700040108496 0 0150452 880 1576vecicc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102520191017
700180108464 0 0150452 880 1576vecicc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102520191017
70456080342 0 0118959 832 1576vecclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
705620120476 0 0159087 832 1576vecclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
75046044459 0 079909 824 1576vecclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
82910046092 0 082821 840 1608vecgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
90356045360 0 081861 840 1608vecgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
92664039413 0 074997 832 1576vecgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
5666822040742 0 079495 832 1576refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
5877212045232 0 085660 880 1576reficc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102520191017
5932052049424 0 091012 880 1576reficc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102520191017
5938544049320 0 091292 880 1576reficc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102520191017
5941984045208 0 086940 880 1576reficc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102520191017
5943220044064 0 084436 880 1576reficc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102520191017
5946722049424 0 091012 880 1576reficc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102520191017
5951602045208 0 086940 880 1576reficc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102520191017
5952480049320 0 091292 880 1576reficc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102520191017
5953792046752 0 088452 880 1576reficc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102520191017
5955318049320 0 091292 880 1576reficc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102520191017
5955506049320 0 091292 880 1576reficc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102520191017
5955584045208 0 086940 880 1576reficc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102520191017
5957968049424 0 091012 880 1576reficc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102520191017
5958846034507 0 073303 832 1576refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
5958868046752 0 088452 880 1576reficc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102520191017
5959802046752 0 088452 880 1576reficc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102520191017
5959964045208 0 086940 880 1576reficc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102520191017
5965580046752 0 088452 880 1576reficc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102520191017
5969762049424 0 091012 880 1576reficc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102520191017
5981532025263 0 063391 832 1576refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
5983166025263 0 063391 832 1576refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
73991220178891 0 0217667 848 1608refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
8349832010298 0 045869 832 1576refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
8447314013396 0 050157 840 1608refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
8662888011657 0 047277 824 1576refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
8981512013145 0 049629 840 1608refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017

Test failure

Implementation: crypto_kem/mceliece348864/ref
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 ref vec
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer ref vec
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer ref vec
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer ref vec
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer ref vec
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer ref vec

Compiler output

Implementation: crypto_kem/mceliece348864/avx
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
benes.c: In file included from benes.c:5:
benes.c: In file included from ./util.h:9:
benes.c: In file included from ./vec128.h:12:
benes.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:
benes.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:
benes.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:
benes.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:
benes.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:
benes.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]
benes.c: extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
benes.c: ^
benes.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]
benes.c: extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
benes.c: ^
benes.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]
benes.c: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
benes.c: ^
benes.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]
benes.c: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
benes.c: ^
benes.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]
benes.c: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
benes.c: ^
benes.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]
benes.c: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
benes.c: ...

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

Compiler output

Implementation: crypto_kem/mceliece348864/avx
Compiler: icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer
bm.c: bm.c(126): (col. 30) catastrophic error: Intrinsic parameter must be an immediate value
bm.c: compilation aborted for bm.c (code 1)

Number of similar (compiler,implementation) pairs: 24, namely:
CompilerImplementations
icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer avx
icc -march=broadwell -mtune=broadwell -O3 -fomit-frame-pointer avx
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer avx
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer avx
icc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer avx
icc -march=core-avx-i -mtune=core-avx-i -O3 -fomit-frame-pointer avx
icc -march=core-avx2 -mtune=core-avx2 -O2 -fomit-frame-pointer avx
icc -march=core-avx2 -mtune=core-avx2 -O3 -fomit-frame-pointer avx
icc -march=corei7-avx -mtune=corei7-avx -O2 -fomit-frame-pointer avx
icc -march=corei7-avx -mtune=corei7-avx -O3 -fomit-frame-pointer avx
icc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer avx
icc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer avx
icc -march=haswell -mtune=haswell -O2 -fomit-frame-pointer avx
icc -march=haswell -mtune=haswell -O3 -fomit-frame-pointer avx
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer avx
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer avx
icc -march=ivybridge -mtune=ivybridge -O2 -fomit-frame-pointer avx
icc -march=ivybridge -mtune=ivybridge -O3 -fomit-frame-pointer avx
icc -march=sandybridge -mtune=sandybridge -O2 -fomit-frame-pointer avx
icc -march=sandybridge -mtune=sandybridge -O3 -fomit-frame-pointer avx
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer avx
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer avx
icc -march=skylake -mtune=skylake -O2 -fomit-frame-pointer avx
icc -march=skylake -mtune=skylake -O3 -fomit-frame-pointer avx

Compiler output

Implementation: crypto_kem/mceliece348864/sse
Compiler: icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer
bm.c: bm.c(152): (col. 30) catastrophic error: Intrinsic parameter must be an immediate value
bm.c: compilation aborted for bm.c (code 1)

Number of similar (compiler,implementation) pairs: 24, namely:
CompilerImplementations
icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer sse
icc -march=broadwell -mtune=broadwell -O3 -fomit-frame-pointer sse
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer sse
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer sse
icc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer sse
icc -march=core-avx-i -mtune=core-avx-i -O3 -fomit-frame-pointer sse
icc -march=core-avx2 -mtune=core-avx2 -O2 -fomit-frame-pointer sse
icc -march=core-avx2 -mtune=core-avx2 -O3 -fomit-frame-pointer sse
icc -march=corei7-avx -mtune=corei7-avx -O2 -fomit-frame-pointer sse
icc -march=corei7-avx -mtune=corei7-avx -O3 -fomit-frame-pointer sse
icc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer sse
icc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer sse
icc -march=haswell -mtune=haswell -O2 -fomit-frame-pointer sse
icc -march=haswell -mtune=haswell -O3 -fomit-frame-pointer sse
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer sse
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer sse
icc -march=ivybridge -mtune=ivybridge -O2 -fomit-frame-pointer sse
icc -march=ivybridge -mtune=ivybridge -O3 -fomit-frame-pointer sse
icc -march=sandybridge -mtune=sandybridge -O2 -fomit-frame-pointer sse
icc -march=sandybridge -mtune=sandybridge -O3 -fomit-frame-pointer sse
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer sse
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer sse
icc -march=skylake -mtune=skylake -O2 -fomit-frame-pointer sse
icc -march=skylake -mtune=skylake -O3 -fomit-frame-pointer sse

Compiler output

Implementation: crypto_kem/mceliece348864/vec
Compiler: icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer
pk_gen.c: pk_gen.c(101): warning #167: argument of type "vec={uint64_t={unsigned long}} (*)[12]" is incompatible with parameter of type "const vec={uint64_t={unsigned long}} (*)[12]"
pk_gen.c: de_bitslicing(list, prod);
pk_gen.c: ^
pk_gen.c:

Number of similar (compiler,implementation) pairs: 24, namely:
CompilerImplementations
icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer vec
icc -march=broadwell -mtune=broadwell -O3 -fomit-frame-pointer vec
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer vec
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer vec
icc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer vec
icc -march=core-avx-i -mtune=core-avx-i -O3 -fomit-frame-pointer vec
icc -march=core-avx2 -mtune=core-avx2 -O2 -fomit-frame-pointer vec
icc -march=core-avx2 -mtune=core-avx2 -O3 -fomit-frame-pointer vec
icc -march=corei7-avx -mtune=corei7-avx -O2 -fomit-frame-pointer vec
icc -march=corei7-avx -mtune=corei7-avx -O3 -fomit-frame-pointer vec
icc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer vec
icc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer vec
icc -march=haswell -mtune=haswell -O2 -fomit-frame-pointer vec
icc -march=haswell -mtune=haswell -O3 -fomit-frame-pointer vec
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer vec
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer vec
icc -march=ivybridge -mtune=ivybridge -O2 -fomit-frame-pointer vec
icc -march=ivybridge -mtune=ivybridge -O3 -fomit-frame-pointer vec
icc -march=sandybridge -mtune=sandybridge -O2 -fomit-frame-pointer vec
icc -march=sandybridge -mtune=sandybridge -O3 -fomit-frame-pointer vec
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer vec
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer vec
icc -march=skylake -mtune=skylake -O2 -fomit-frame-pointer vec
icc -march=skylake -mtune=skylake -O3 -fomit-frame-pointer vec