Implementation notes: amd64, beelink, crypto_kem/mceliece348864

Computer: beelink
Microarchitecture: amd64; Zen3 (a50f00)
Architecture: amd64
CPU ID: AuthenticAMD-00a50f00-178bfbff
SUPERCOP version: 20221122
Operation: crypto_kem
Primitive: mceliece348864
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
131027268958 0 0316935 868 1760avxclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010420221122
132073130341 0 0174397 812 1792avxgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010420221122
132325225815 0 0273711 868 1760avxclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010420221122
14091863379 0 0106637 860 1824avxclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010420221122
15277965557 0 0108527 868 1760avxclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010420221122
15657070651 0 0113485 812 1792avxgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010420221122
167158228660 0 0267247 868 1760sseclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010420221122
170071272652 0 0311399 868 1760sseclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010420221122
171424130996 0 0166781 812 1792ssegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010420221122
17912961163 0 0102325 804 1760avxgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010420221122
18154165051 0 099461 860 1824sseclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010420221122
19161968125 0 0101967 868 1760sseclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010420221122
19503171439 0 0105813 812 1792ssegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010420221122
19896566109 0 099885 812 1792ssegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010420221122
22390361838 0 094517 804 1760ssegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010420221122
37552465229 0 0107493 812 1792avxgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010420221122
50862691497 0 0127853 812 1792vecgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010420221122
61851247260 0 081991 868 1760vecclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010420221122
623459117365 0 0153895 868 1760vecclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010420221122
68083148374 0 083261 860 1824vecclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010420221122
721152208252 0 0248407 868 1760vecclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010420221122
72178948874 0 084221 812 1792vecgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010420221122
732183179011 0 0219151 868 1760vecclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010420221122
81989747396 0 082173 812 1792vecgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010420221122
87447541436 0 074989 804 1760vecgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010420221122
5411324048114 0 084735 868 1760refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010420221122
5890239315376 0 050669 860 1824refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010420221122
5938203888876 0 0129343 868 1760refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010420221122
59411279101833 0 0142343 868 1760refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010420221122
6205876535398 0 072447 820 1792refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010420221122
6998695715619 0 051047 820 1792refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010420221122
7039839611881 0 045503 812 1760refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010420221122
7658156014631 0 049277 812 1792refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010420221122
7788197614191 0 048927 868 1760refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010420221122

Compiler output

Implementation: avx
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
pk_gen.c: pk_gen.c:219:12: warning: variable length array folded to constant array as an extension [-Wgnu-folding-constant]
pk_gen.c: uint64_t w[ PK_NROWS ][ nBlocks_I*4 ];
pk_gen.c: ^
pk_gen.c: pk_gen.c:220:10: warning: variable length array folded to constant array as an extension [-Wgnu-folding-constant]
pk_gen.c: vec256 v[ PK_NROWS ][ nBlocks_I ];
pk_gen.c: ^
pk_gen.c: 2 warnings generated.

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

Compiler output

Implementation: avx
Security model: constbranchindex
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
decrypt.c: decrypt.c:213:11: warning: AVX vector return of type 'vec256' (aka '__m256i') without 'avx' enabled changes the ABI [-Wpsabi]
decrypt.c: allone = vec256_set1_16b(0xFFFF);
decrypt.c: ^
decrypt.c: decrypt.c:217:17: warning: AVX vector return of type 'vec256' (aka '__m256i') without 'avx' enabled changes the ABI [-Wpsabi]
decrypt.c: error256[i] = vec256_or_reduce(eval[i]);
decrypt.c: ^
decrypt.c: decrypt.c:218:17: warning: AVX vector argument of type 'vec256' (aka '__m256i') without 'avx' enabled changes the ABI [-Wpsabi]
decrypt.c: error256[i] = vec256_xor(error256[i], allone);
decrypt.c: ^
decrypt.c: decrypt.c:146:12: warning: AVX vector return of type 'vec256' (aka '__m256i') without 'avx' enabled changes the ABI [-Wpsabi]
decrypt.c: out[i] = vec256_set4x(v[0], v[1], v[2], v[3]);
decrypt.c: ^
decrypt.c: In file included from decrypt.c:8:
decrypt.c: In file included from ./fft_tr.h:10:
decrypt.c: ./vec256.h:37:10: error: always_inline function '_mm256_set_epi64x' requires target feature 'avx', but would be inlined into function 'vec256_set4x' that is compiled without support for 'avx'
decrypt.c: return _mm256_set_epi64x(a3, a2, a1, a0);
decrypt.c: ^
decrypt.c: ./vec256.h:37:10: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
decrypt.c: decrypt.c:52:15: warning: AVX vector argument of type 'vec256' (aka '__m256i') without 'avx' enabled changes the ABI [-Wpsabi]
decrypt.c: out[i][j] = vec256_and(inv[i][j], recv[i]);
decrypt.c: ^
decrypt.c: In file included from decrypt.c:8:
decrypt.c: In file included from ./fft_tr.h:10:
decrypt.c: ./vec256.h:50:9: error: always_inline function '_mm256_and_si256' requires target feature 'avx2', but would be inlined into function 'vec256_and' that is compiled without support for 'avx2'
decrypt.c: return _mm256_and_si256(a, b);
decrypt.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE avx

Compiler output

Implementation: sse
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
pk_gen.c: pk_gen.c:208:12: warning: variable length array folded to constant array as an extension [-Wgnu-folding-constant]
pk_gen.c: uint64_t w[ PK_NROWS ][ nBlocks_I*2 ];
pk_gen.c: ^
pk_gen.c: pk_gen.c:209:12: warning: variable length array folded to constant array as an extension [-Wgnu-folding-constant]
pk_gen.c: vec128 v[ PK_NROWS ][ nBlocks_I ];
pk_gen.c: ^
pk_gen.c: 2 warnings generated.

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

Compiler output

Implementation: sse
Security model: constbranchindex
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
decrypt.c: In file included from decrypt.c:8:
decrypt.c: In file included from ./fft_tr.h:10:
decrypt.c: ./vec128.h:39:9: error: always_inline function '_mm_testz_si128' requires target feature 'sse4.1', but would be inlined into function 'vec128_testz' that is compiled without support for 'sse4.1'
decrypt.c: return _mm_testz_si128(a, a);
decrypt.c: ^
decrypt.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE sse