Implementation notes: amd64, pmnod003, crypto_sign/picnic2l5fs

Computer: pmnod003
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20190910
Operation: crypto_sign
Primitive: picnic2l5fs
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1133311338251754 3036 16370944 3944 1696optimizedct/avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
1150400982224491 3036 16341056 3944 1696optimizedct/avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
1229331362227760 3036 16344176 3944 1696optimizedct/avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
1243857560209029 3036 16324280 3936 1664optimizedct/avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
1951317338229218 3036 16273128 3936 1664optimizedct/sse2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
1968334216212403 3036 16253776 3936 1664optimizedct/sse2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
2061436586195502 3036 16235552 3928 1632optimizedct/sse2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
2063487940215788 3036 16256960 3936 1664optimizedct/sse2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
2539315686218240 3032 16261976 3936 1664optimizedct/cgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
2623822038203988 3032 16245192 3936 1664optimizedct/cgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
2761755624251308 2056 16297725 2992 1632optimizedct/cicc_-xCORE-AVX2_-O2_-fomit-frame-pointer2019091220190910
2770743050253320 2056 16299949 2992 1664optimizedct/cicc_-xCORE-AVX512_-O2_-fomit-frame-pointer2019091220190910
2774258086258740 2056 16305493 2992 1664optimizedct/cicc_-xCOMMON-AVX512_-O2_-fomit-frame-pointer2019091220190910
2779502488188093 3032 16227960 3928 1632optimizedct/cgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
2780351930264284 2056 16310285 2992 1632optimizedct/cicc_-xCORE-AVX2_-O3_-fomit-frame-pointer2019091220190910
2783697336266288 2056 16312853 2992 1664optimizedct/cicc_-xCORE-AVX512_-O3_-fomit-frame-pointer2019091220190910
2793133240271540 2056 16317749 2992 1664optimizedct/cicc_-xCOMMON-AVX512_-O3_-fomit-frame-pointer2019091220190910
2813951794245960 2056 16290784 3000 1632optimizedct/cicc_-xSSE4.2_-O2_-fomit-frame-pointer2019091220190910
2824729988259048 2056 16303880 3000 1632optimizedct/cicc_-xSSE4.2_-O3_-fomit-frame-pointer2019091220190910
2834922532247204 2056 16292208 3000 1632optimizedct/cicc_-xSSE4.1_-O2_-fomit-frame-pointer2019091220190910
2840080902246936 2056 16293040 3000 1632optimizedct/cicc_-xCORE-AVX-I_-O2_-fomit-frame-pointer2019091220190910
2841359910246936 2056 16293040 3000 1632optimizedct/cicc_-xAVX_-O2_-fomit-frame-pointer2019091220190910
2845181298259816 2056 16305984 3000 1632optimizedct/cicc_-xAVX_-O3_-fomit-frame-pointer2019091220190910
2845272596259816 2056 16305984 3000 1632optimizedct/cicc_-xCORE-AVX-I_-O3_-fomit-frame-pointer2019091220190910
2846691324260308 2056 16305368 3000 1632optimizedct/cicc_-xSSE4.1_-O3_-fomit-frame-pointer2019091220190910
2954350646202150 3032 16243120 3936 1664optimizedct/cgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
252185538741117536 4 01162930 944 1632reficc_-xCOMMON-AVX512_-O3_-fomit-frame-pointer2019091220190910
257782763741117056 4 01162962 944 1632reficc_-xCOMMON-AVX512_-O2_-fomit-frame-pointer2019091220190910
271597693681064778 4 01107469 912 1632refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
280397932081046231 4 01086317 912 1632refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
292060991821110304 4 01155386 944 1600reficc_-xCORE-AVX2_-O3_-fomit-frame-pointer2019091220190910
292558804981116512 4 01162242 944 1632reficc_-xCORE-AVX512_-O2_-fomit-frame-pointer2019091220190910
292569949501116520 4 01162122 944 1632reficc_-xCORE-AVX512_-O3_-fomit-frame-pointer2019091220190910
301884150061108600 4 01154066 944 1600reficc_-xCORE-AVX2_-O2_-fomit-frame-pointer2019091220190910
312775257861035912 4 01074789 904 1600refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
317029790841093204 4 01137037 952 1600reficc_-xSSE4.2_-O2_-fomit-frame-pointer2019091220190910
317159533321093364 4 01137349 952 1600reficc_-xSSE4.1_-O2_-fomit-frame-pointer2019091220190910
321052822921099028 4 01144205 952 1600reficc_-xCORE-AVX-I_-O3_-fomit-frame-pointer2019091220190910
321106970461099028 4 01144205 952 1600reficc_-xAVX_-O3_-fomit-frame-pointer2019091220190910
322219314161093980 4 01137885 952 1600reficc_-xSSE4.2_-O3_-fomit-frame-pointer2019091220190910
322877157101097228 4 01142421 952 1600reficc_-xAVX_-O2_-fomit-frame-pointer2019091220190910
323154020361094156 4 01138261 952 1600reficc_-xSSE4.1_-O3_-fomit-frame-pointer2019091220190910
323379261581097228 4 01142421 952 1600reficc_-xCORE-AVX-I_-O2_-fomit-frame-pointer2019091220190910

Test failure

Implementation: ref
Security model: unknown
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE
error 142
sh: line 1: 22874 Alarm clock killafter 3600 ./try

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

Compiler output

Implementation: optimizedct/avx2
Security model: unknown
Compiler: icc -xAVX -O2 -fomit-frame-pointer
io.c: In file included from mzd_additional.h(24),
io.c: from io.h(16),
io.c: from io.c(11):
io.c: simd.h(101): warning #47: incompatible redefinition of macro "_mm256_set_m128i" (declared at line 1575 of "/opt/intel/compilers_and_libraries_2019.4.243/linux/compiler/include/icc/immintrin.h")
io.c: #define _mm256_set_m128i(v0, v1) _mm256_insertf128_si256(_mm256_castsi128_si256(v1), (v0), 1)
io.c: ^
io.c:
io.c: In file included from mzd_additional.h(24),
io.c: from io.h(16),
io.c: from io.c(11):
io.c: simd.h(102): warning #47: incompatible redefinition of macro "_mm256_setr_m128i" (declared at line 1601 of "/opt/intel/compilers_and_libraries_2019.4.243/linux/compiler/include/icc/immintrin.h")
io.c: #define _mm256_setr_m128i(v0, v1) _mm256_set_m128i((v1), (v0))
io.c: ^
io.c:
io.c: In file included from mzd_additional.h(24),
io.c: from io.h(16),
io.c: from io.c(11):
io.c: simd.h(109): warning #2423: target not recognized
io.c: apply_region(mm256_xor_region, word256, mm256_xor, FN_ATTRIBUTES_AVX2);
io.c: ^
io.c:
io.c: In file included from mzd_additional.h(24),
io.c: from io.h(16),
io.c: from io.c(11):
io.c: simd.h(110): warning #2423: target not recognized
io.c: ...
lowmc.c: In file included from mzd_additional.h(24),
lowmc.c: from io.h(16),
lowmc.c: from lowmc.c(11):
lowmc.c: simd.h(101): warning #47: incompatible redefinition of macro "_mm256_set_m128i" (declared at line 1575 of "/opt/intel/compilers_and_libraries_2019.4.243/linux/compiler/include/icc/immintrin.h")
lowmc.c: #define _mm256_set_m128i(v0, v1) _mm256_insertf128_si256(_mm256_castsi128_si256(v1), (v0), 1)
lowmc.c: ^
lowmc.c:
lowmc.c: In file included from mzd_additional.h(24),
lowmc.c: from io.h(16),
lowmc.c: from lowmc.c(11):
lowmc.c: simd.h(102): warning #47: incompatible redefinition of macro "_mm256_setr_m128i" (declared at line 1601 of "/opt/intel/compilers_and_libraries_2019.4.243/linux/compiler/include/icc/immintrin.h")
lowmc.c: #define _mm256_setr_m128i(v0, v1) _mm256_set_m128i((v1), (v0))
lowmc.c: ^
lowmc.c:
lowmc.c: In file included from mzd_additional.h(24),
lowmc.c: from io.h(16),
lowmc.c: from lowmc.c(11):
lowmc.c: simd.h(109): warning #2423: target not recognized
lowmc.c: apply_region(mm256_xor_region, word256, mm256_xor, FN_ATTRIBUTES_AVX2);
lowmc.c: ^
lowmc.c:
lowmc.c: In file included from mzd_additional.h(24),
lowmc.c: from io.h(16),
lowmc.c: from lowmc.c(11):
lowmc.c: simd.h(110): warning #2423: target not recognized
lowmc.c: ...

Number of similar (compiler,implementation) pairs: 14, namely:
CompilerImplementations
icc -xAVX -O2 -fomit-frame-pointer optimizedct/avx2
icc -xAVX -O3 -fomit-frame-pointer optimizedct/avx2
icc -xCOMMON-AVX512 -O2 -fomit-frame-pointer optimizedct/avx2
icc -xCOMMON-AVX512 -O3 -fomit-frame-pointer optimizedct/avx2
icc -xCORE-AVX-I -O2 -fomit-frame-pointer optimizedct/avx2
icc -xCORE-AVX-I -O3 -fomit-frame-pointer optimizedct/avx2
icc -xCORE-AVX2 -O2 -fomit-frame-pointer optimizedct/avx2
icc -xCORE-AVX2 -O3 -fomit-frame-pointer optimizedct/avx2
icc -xCORE-AVX512 -O2 -fomit-frame-pointer optimizedct/avx2
icc -xCORE-AVX512 -O3 -fomit-frame-pointer optimizedct/avx2
icc -xSSE4.1 -O2 -fomit-frame-pointer optimizedct/avx2
icc -xSSE4.1 -O3 -fomit-frame-pointer optimizedct/avx2
icc -xSSE4.2 -O2 -fomit-frame-pointer optimizedct/avx2
icc -xSSE4.2 -O3 -fomit-frame-pointer optimizedct/avx2

Compiler output

Implementation: optimizedct/c
Security model: unknown
Compiler: icc -xAVX -O2 -fomit-frame-pointer
io.c: In file included from io.h(16),
io.c: from io.c(11):
io.c: mzd_additional.h(39): warning #1292: unknown attribute "assume_aligned"
io.c: mzd_local_t* mzd_local_init_ex(uint32_t r, uint32_t c, bool clear) ATTR_ASSUME_ALIGNED(32);
io.c: ^
io.c:
lowmc.c: In file included from io.h(16),
lowmc.c: from lowmc.c(11):
lowmc.c: mzd_additional.h(39): warning #1292: unknown attribute "assume_aligned"
lowmc.c: mzd_local_t* mzd_local_init_ex(uint32_t r, uint32_t c, bool clear) ATTR_ASSUME_ALIGNED(32);
lowmc.c: ^
lowmc.c:
lowmc_256_256_38.c: In file included from lowmc_pars.h(15),
lowmc_256_256_38.c: from lowmc_256_256_38.h(4),
lowmc_256_256_38.c: from lowmc_256_256_38.c(4):
lowmc_256_256_38.c: mzd_additional.h(39): warning #1292: unknown attribute "assume_aligned"
lowmc_256_256_38.c: mzd_local_t* mzd_local_init_ex(uint32_t r, uint32_t c, bool clear) ATTR_ASSUME_ALIGNED(32);
lowmc_256_256_38.c: ^
lowmc_256_256_38.c:
mpc_lowmc.c: In file included from lowmc_pars.h(15),
mpc_lowmc.c: from mpc_lowmc.c(11):
mpc_lowmc.c: mzd_additional.h(39): warning #1292: unknown attribute "assume_aligned"
mpc_lowmc.c: mzd_local_t* mzd_local_init_ex(uint32_t r, uint32_t c, bool clear) ATTR_ASSUME_ALIGNED(32);
mpc_lowmc.c: ^
mpc_lowmc.c:
mzd_additional.c: In file included from mzd_additional.c(12):
mzd_additional.c: mzd_additional.h(39): warning #1292: unknown attribute "assume_aligned"
mzd_additional.c: mzd_local_t* mzd_local_init_ex(uint32_t r, uint32_t c, bool clear) ATTR_ASSUME_ALIGNED(32);
mzd_additional.c: ^
mzd_additional.c:
picnic.c: In file included from io.h(16),
picnic.c: from picnic.c(16):
picnic.c: mzd_additional.h(39): warning #1292: unknown attribute "assume_aligned"
picnic.c: mzd_local_t* mzd_local_init_ex(uint32_t r, uint32_t c, bool clear) ATTR_ASSUME_ALIGNED(32);
picnic.c: ^
picnic.c:
picnic2_impl.c: In file included from io.h(16),
picnic2_impl.c: from picnic2_impl.c(20):
picnic2_impl.c: mzd_additional.h(39): warning #1292: unknown attribute "assume_aligned"
picnic2_impl.c: mzd_local_t* mzd_local_init_ex(uint32_t r, uint32_t c, bool clear) ATTR_ASSUME_ALIGNED(32);
picnic2_impl.c: ^
picnic2_impl.c:
picnic2_simulate.c: In file included from io.h(16),
picnic2_simulate.c: from picnic2_simulate.c(20):
picnic2_simulate.c: mzd_additional.h(39): warning #1292: unknown attribute "assume_aligned"
picnic2_simulate.c: mzd_local_t* mzd_local_init_ex(uint32_t r, uint32_t c, bool clear) ATTR_ASSUME_ALIGNED(32);
picnic2_simulate.c: ^
picnic2_simulate.c:
picnic2_simulate_mul.c: In file included from lowmc_pars.h(15),
picnic2_simulate_mul.c: from lowmc.h(13),
picnic2_simulate_mul.c: from picnic_impl.h(13),
picnic2_simulate_mul.c: from picnic2_impl.h(18),
picnic2_simulate_mul.c: from picnic2_types.h(16),
picnic2_simulate_mul.c: from picnic2_simulate_mul.h(13),
picnic2_simulate_mul.c: from picnic2_simulate_mul.c(14):
picnic2_simulate_mul.c: mzd_additional.h(39): warning #1292: unknown attribute "assume_aligned"
picnic2_simulate_mul.c: mzd_local_t* mzd_local_init_ex(uint32_t r, uint32_t c, bool clear) ATTR_ASSUME_ALIGNED(32);
picnic2_simulate_mul.c: ^
picnic2_simulate_mul.c:
picnic2_tree.c: In file included from lowmc_pars.h(15),
picnic2_tree.c: from lowmc.h(13),
picnic2_tree.c: from picnic_impl.h(13),
picnic2_tree.c: from kdf_shake.h(40),
picnic2_tree.c: from picnic2_tree.c(18):
picnic2_tree.c: mzd_additional.h(39): warning #1292: unknown attribute "assume_aligned"
picnic2_tree.c: mzd_local_t* mzd_local_init_ex(uint32_t r, uint32_t c, bool clear) ATTR_ASSUME_ALIGNED(32);
picnic2_tree.c: ^
picnic2_tree.c:
picnic2_types.c: In file included from lowmc_pars.h(15),
picnic2_types.c: from lowmc.h(13),
picnic2_types.c: from picnic_impl.h(13),
picnic2_types.c: from picnic2_impl.h(18),
picnic2_types.c: from picnic2_types.h(16),
picnic2_types.c: from picnic2_types.c(13):
picnic2_types.c: mzd_additional.h(39): warning #1292: unknown attribute "assume_aligned"
picnic2_types.c: mzd_local_t* mzd_local_init_ex(uint32_t r, uint32_t c, bool clear) ATTR_ASSUME_ALIGNED(32);
picnic2_types.c: ^
picnic2_types.c:
picnic_impl.c: In file included from io.h(16),
picnic_impl.c: from picnic_impl.c(13):
picnic_impl.c: mzd_additional.h(39): warning #1292: unknown attribute "assume_aligned"
picnic_impl.c: mzd_local_t* mzd_local_init_ex(uint32_t r, uint32_t c, bool clear) ATTR_ASSUME_ALIGNED(32);
picnic_impl.c: ^
picnic_impl.c:

Number of similar (compiler,implementation) pairs: 14, namely:
CompilerImplementations
icc -xAVX -O2 -fomit-frame-pointer optimizedct/c
icc -xAVX -O3 -fomit-frame-pointer optimizedct/c
icc -xCOMMON-AVX512 -O2 -fomit-frame-pointer optimizedct/c
icc -xCOMMON-AVX512 -O3 -fomit-frame-pointer optimizedct/c
icc -xCORE-AVX-I -O2 -fomit-frame-pointer optimizedct/c
icc -xCORE-AVX-I -O3 -fomit-frame-pointer optimizedct/c
icc -xCORE-AVX2 -O2 -fomit-frame-pointer optimizedct/c
icc -xCORE-AVX2 -O3 -fomit-frame-pointer optimizedct/c
icc -xCORE-AVX512 -O2 -fomit-frame-pointer optimizedct/c
icc -xCORE-AVX512 -O3 -fomit-frame-pointer optimizedct/c
icc -xSSE4.1 -O2 -fomit-frame-pointer optimizedct/c
icc -xSSE4.1 -O3 -fomit-frame-pointer optimizedct/c
icc -xSSE4.2 -O2 -fomit-frame-pointer optimizedct/c
icc -xSSE4.2 -O3 -fomit-frame-pointer optimizedct/c

Compiler output

Implementation: optimizedct/sse2
Security model: unknown
Compiler: icc -xAVX -O2 -fomit-frame-pointer
io.c: In file included from mzd_additional.h(24),
io.c: from io.h(16),
io.c: from io.c(11):
io.c: simd.h(105): warning #2423: target not recognized
io.c: apply_region(mm128_xor_region, word128, mm128_xor, FN_ATTRIBUTES_SSE2);
io.c: ^
io.c:
io.c: In file included from mzd_additional.h(24),
io.c: from io.h(16),
io.c: from io.c(11):
io.c: simd.h(106): warning #2423: target not recognized
io.c: apply_mask_region(mm128_xor_mask_region, word128, mm128_xor, mm128_and, FN_ATTRIBUTES_SSE2);
io.c: ^
io.c:
io.c: In file included from mzd_additional.h(24),
io.c: from io.h(16),
io.c: from io.c(11):
io.c: simd.h(107): warning #2423: target not recognized
io.c: apply_mask(mm128_xor_mask, word128, mm128_xor, mm128_and, FN_ATTRIBUTES_SSE2_CONST);
io.c: ^
io.c:
io.c: In file included from mzd_additional.h(24),
io.c: from io.h(16),
io.c: from io.c(11):
io.c: simd.h(108): warning #2423: target not recognized
io.c: ...
lowmc.c: In file included from mzd_additional.h(24),
lowmc.c: from io.h(16),
lowmc.c: from lowmc.c(11):
lowmc.c: simd.h(105): warning #2423: target not recognized
lowmc.c: apply_region(mm128_xor_region, word128, mm128_xor, FN_ATTRIBUTES_SSE2);
lowmc.c: ^
lowmc.c:
lowmc.c: In file included from mzd_additional.h(24),
lowmc.c: from io.h(16),
lowmc.c: from lowmc.c(11):
lowmc.c: simd.h(106): warning #2423: target not recognized
lowmc.c: apply_mask_region(mm128_xor_mask_region, word128, mm128_xor, mm128_and, FN_ATTRIBUTES_SSE2);
lowmc.c: ^
lowmc.c:
lowmc.c: In file included from mzd_additional.h(24),
lowmc.c: from io.h(16),
lowmc.c: from lowmc.c(11):
lowmc.c: simd.h(107): warning #2423: target not recognized
lowmc.c: apply_mask(mm128_xor_mask, word128, mm128_xor, mm128_and, FN_ATTRIBUTES_SSE2_CONST);
lowmc.c: ^
lowmc.c:
lowmc.c: In file included from mzd_additional.h(24),
lowmc.c: from io.h(16),
lowmc.c: from lowmc.c(11):
lowmc.c: simd.h(108): warning #2423: target not recognized
lowmc.c: ...

Number of similar (compiler,implementation) pairs: 14, namely:
CompilerImplementations
icc -xAVX -O2 -fomit-frame-pointer optimizedct/sse2
icc -xAVX -O3 -fomit-frame-pointer optimizedct/sse2
icc -xCOMMON-AVX512 -O2 -fomit-frame-pointer optimizedct/sse2
icc -xCOMMON-AVX512 -O3 -fomit-frame-pointer optimizedct/sse2
icc -xCORE-AVX-I -O2 -fomit-frame-pointer optimizedct/sse2
icc -xCORE-AVX-I -O3 -fomit-frame-pointer optimizedct/sse2
icc -xCORE-AVX2 -O2 -fomit-frame-pointer optimizedct/sse2
icc -xCORE-AVX2 -O3 -fomit-frame-pointer optimizedct/sse2
icc -xCORE-AVX512 -O2 -fomit-frame-pointer optimizedct/sse2
icc -xCORE-AVX512 -O3 -fomit-frame-pointer optimizedct/sse2
icc -xSSE4.1 -O2 -fomit-frame-pointer optimizedct/sse2
icc -xSSE4.1 -O3 -fomit-frame-pointer optimizedct/sse2
icc -xSSE4.2 -O2 -fomit-frame-pointer optimizedct/sse2
icc -xSSE4.2 -O3 -fomit-frame-pointer optimizedct/sse2