Implementation notes: amd64, kizomba, crypto_kem/mceliece6960119f

Computer: kizomba
Architecture: amd64
CPU ID: GenuineIntel-000906e9-bfebfbff
SUPERCOP version: 20191221
Operation: crypto_kem
Primitive: mceliece6960119f
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
418098143551 0 0185817 784 1576avxclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019122120191221
421248157187 0 0199238 784 1608avxgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019122120191221
428504119508 0 0161697 784 1576avxclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019122120191221
434400119508 0 0161697 784 1576avxclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019122120191221
46970970314 0 0109087 776 1576avxclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019122120191221
626436121970 0 0152881 784 1576sseclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019110520191017
628686104180 0 0135097 784 1576sseclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019110520191017
637256104180 0 0135097 784 1576sseclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019110520191017
639294153580 0 0185430 784 1608ssegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019110520191017
70456761054 0 088999 776 1576sseclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019110520191017
70936570210 0 099246 784 1608ssegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019110520191017
73323470245 0 099382 784 1608ssegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019110520191017
80310763534 0 091342 776 1576ssegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019110520191017
1714139107343 0 0140169 784 1576vecclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019122120191221
1724284107343 0 0140169 784 1576vecclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019122120191221
1749512124296 0 0157225 784 1576vecclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019122120191221
1753347110849 0 0143553 784 1576vecclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019122120191221
1854085189112 0 0222846 784 1608vecgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019122120191221
207312756065 0 085703 776 1576vecclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019122120191221
275079668782 0 0100214 784 1608vecgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019122120191221
287323670372 0 0101942 784 1608vecgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019122120191221
290036653520 0 083742 776 1576vecgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019122120191221
25977233653386 0 086737 784 1576refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019110520191017
26027311344540 0 077793 784 1576refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019110520191017
26046967641164 0 073897 784 1576refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019110520191017
26076095444540 0 077793 784 1576refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019110520191017
34682784913932 0 043679 776 1576refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019110520191017
38611907117405 0 048806 784 1608refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019110520191017
38808573892709 0 0127096 792 1608refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019110520191017
39019107313675 0 043878 776 1576refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019110520191017
39790517917581 0 049118 784 1608refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019110520191017

Compiler output

Implementation: crypto_kem/mceliece6960119f/sse
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:9:
decrypt.c: ./vec128.h:30:9: error: always_inline function '_mm_testz_si128' requires target feature 'ssse3', but would be inlined into function 'vec128_testz' that is compiled without support for 'ssse3'
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

Compiler output

Implementation: crypto_kem/mceliece6960119f/avx
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
bm.c: bm.c:133:30: error: always_inline function '_mm256_extract_epi64' requires target feature 'sse4.2', but would be inlined into function 'get_coefs' that is compiled without support for 'sse4.2'
bm.c: out[ (4*j + k)*16 + i ] = (vec256_extract(buf[i], j) >> (k*16)) & GFMASK;
bm.c: ^
bm.c: ./vec256.h:31:41: note: expanded from macro 'vec256_extract'
bm.c: #define vec256_extract(a,i) ((uint64_t) _mm256_extract_epi64((vec256) (a),(i)))
bm.c: ^
bm.c: ./vec256.h:22:10: error: always_inline function '_mm256_setzero_si256' requires target feature 'sse4.2', but would be inlined into function 'vec256_setzero' that is compiled without support for 'sse4.2'
bm.c: return _mm256_setzero_si256();
bm.c: ^
bm.c: ./vec256.h:17:9: error: always_inline function '_mm256_set1_epi16' requires target feature 'sse4.2', but would be inlined into function 'vec256_set1_16b' that is compiled without support for 'sse4.2'
bm.c: return _mm256_set1_epi16(a);
bm.c: ^
bm.c: bm.c:64:2: error: always_inline function '_mm256_slli_epi64' requires target feature 'avx2', but would be inlined into function 'interleave' that is compiled without support for 'avx2'
bm.c: vec256_sll_4x(vec256_and(in[idx1], mask[0]), s));
bm.c: ^
bm.c: ./vec256.h:53:39: note: expanded from macro 'vec256_sll_4x'
bm.c: #define vec256_sll_4x(a, s) ((vec256) _mm256_slli_epi64((vec256) (a), (s)))
bm.c: ^
bm.c: bm.c:66:16: error: always_inline function '_mm256_srli_epi64' requires target feature 'avx2', but would be inlined into function 'interleave' that is compiled without support for 'avx2'
bm.c: y = vec256_or(vec256_srl_4x(vec256_and(in[idx0], mask[1]), s),
bm.c: ^
bm.c: ./vec256.h:54:39: note: expanded from macro 'vec256_srl_4x'
bm.c: #define vec256_srl_4x(a, s) ((vec256) _mm256_srli_epi64((vec256) (a), (s)))
bm.c: ^
bm.c: ./vec256.h:50:9: error: always_inline function '_mm256_or_si256' requires target feature 'avx2', but would be inlined into function 'vec256_or' that is compiled without support for 'avx2'
bm.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: crypto_kem/mceliece6960119f/avx
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
bm.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:41:0,
bm.c: from vec256.h:11,
bm.c: from bm.h:10,
bm.c: from bm.c:6:
bm.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h: In function 'bm':
bm.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:524:20: error: the last argument must be a 1-bit immediate
bm.c: return (__m128i) __builtin_ia32_vextractf128_si256 ((__v8si)__X, __N);
bm.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
bm.c: In file included from vec128.h:12:0,
bm.c: from bm.h:9,
bm.c: from bm.c:6:
bm.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/smmintrin.h:456:10: error: selector must be an integer constant in the range 0..1
bm.c: return __builtin_ia32_vec_ext_v2di ((__v2di)__X, __N);
bm.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE avx
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE avx
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE avx