Implementation notes: amd64, gcc68, crypto_kem/firesaber2

Computer: gcc68
Architecture: amd64
CPU ID: AuthenticAMD-00800f82-178bfbff
SUPERCOP version: 20191221
Operation: crypto_kem
Primitive: firesaber2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
34454480080 288 099467 1088 6080avx2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010120191221
34560064964 288 083715 1088 6080avx2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010120191221
34572864964 288 083715 1088 6080avx2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010120191221
34995290208 288 0109692 1104 6112avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010120191221
41177628069 288 044969 1080 6080avx2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010120191221
43334425365 288 043500 1104 6112avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010120191221
43833624641 288 042540 1104 6112avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010120191221
44019223232 288 040044 1096 6080avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010120191221
48124865073 0 084118 800 1624refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010120191221
48704065073 0 084118 800 1624refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010120191221
48784077165 0 096398 800 1624refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010120191221
52553696767 0 0116662 800 1624refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010120191221
55296055994 0 075483 816 1656refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010120191221
158438413841 0 030820 792 1624refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010120191221
171625612627 0 030523 816 1656refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010120191221
190860814430 0 032587 816 1656refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010120191221
239987212470 0 029291 808 1624refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010120191221

Compiler output

Implementation: avx2
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
SABER_indcpa.c: In file included from SABER_indcpa.c:8:
SABER_indcpa.c: In file included from ././polymul/toom_cook_4/toom-cook_4way.c:1:
SABER_indcpa.c: ././polymul/toom_cook_4/scm_avx.c:50:13: error: always_inline function '_mm256_mullo_epi16' requires target feature 'avx2', but would be inlined into function 'schoolbook_avx_new1' that is compiled without support for 'avx2'
SABER_indcpa.c: c_avx[0] = _mm256_mullo_epi16 (a[0], b[0]);
SABER_indcpa.c: ^
SABER_indcpa.c: ././polymul/toom_cook_4/scm_avx.c:51:13: error: always_inline function '_mm256_mullo_epi16' requires target feature 'avx2', but would be inlined into function 'schoolbook_avx_new1' that is compiled without support for 'avx2'
SABER_indcpa.c: c_avx[1] = _mm256_mullo_epi16 (a[0], b[1]);
SABER_indcpa.c: ^
SABER_indcpa.c: ././polymul/toom_cook_4/scm_avx.c:52:9: error: always_inline function '_mm256_mullo_epi16' requires target feature 'avx2', but would be inlined into function 'schoolbook_avx_new1' that is compiled without support for 'avx2'
SABER_indcpa.c: temp = _mm256_mullo_epi16 (a[1], b[0]);
SABER_indcpa.c: ^
SABER_indcpa.c: ././polymul/toom_cook_4/scm_avx.c:53:13: error: always_inline function '_mm256_add_epi16' requires target feature 'avx2', but would be inlined into function 'schoolbook_avx_new1' that is compiled without support for 'avx2'
SABER_indcpa.c: c_avx[1] = _mm256_add_epi16(c_avx[1], temp);
SABER_indcpa.c: ^
SABER_indcpa.c: ././polymul/toom_cook_4/scm_avx.c:54:13: error: always_inline function '_mm256_mullo_epi16' requires target feature 'avx2', but would be inlined into function 'schoolbook_avx_new1' that is compiled without support for 'avx2'
SABER_indcpa.c: c_avx[2] = _mm256_mullo_epi16 (a[0], b[2]);
SABER_indcpa.c: ^
SABER_indcpa.c: ././polymul/toom_cook_4/scm_avx.c:55:9: error: always_inline function '_mm256_mullo_epi16' requires target feature 'avx2', but would be inlined into function 'schoolbook_avx_new1' that is compiled without support for 'avx2'
SABER_indcpa.c: temp = _mm256_mullo_epi16 (a[1], b[1]);
SABER_indcpa.c: ^
SABER_indcpa.c: ././polymul/toom_cook_4/scm_avx.c:56:13: error: always_inline function '_mm256_add_epi16' requires target feature 'avx2', but would be inlined into function 'schoolbook_avx_new1' that is compiled without support for 'avx2'
SABER_indcpa.c: c_avx[2] = _mm256_add_epi16(c_avx[2], temp);
SABER_indcpa.c: ^
SABER_indcpa.c: ././polymul/toom_cook_4/scm_avx.c:57:9: error: always_inline function '_mm256_mullo_epi16' requires target feature 'avx2', but would be inlined into function 'schoolbook_avx_new1' that is compiled without support for 'avx2'
SABER_indcpa.c: temp = _mm256_mullo_epi16 (a[2], b[0]);
SABER_indcpa.c: ...

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

Namespace violations

Implementation: avx2
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
SABER_indcpa.o BS2POLq T
SABER_indcpa.o GenMatrix T
SABER_indcpa.o GenSecret T
SABER_indcpa.o H1_avx C
SABER_indcpa.o H2_avx C
SABER_indcpa.o POL2MSG T
SABER_indcpa.o a C
SABER_indcpa.o a0 C
SABER_indcpa.o a0_array D
SABER_indcpa.o a1 C
SABER_indcpa.o a1_array D
SABER_indcpa.o a2 C
SABER_indcpa.o a2_array D
SABER_indcpa.o a3 C
SABER_indcpa.o a3_array D
SABER_indcpa.o a_array C
SABER_indcpa.o a_extra C
SABER_indcpa.o b C
SABER_indcpa.o b0 C
SABER_indcpa.o b0_array D
SABER_indcpa.o b1 C
SABER_indcpa.o b1_array D
SABER_indcpa.o b2 C
SABER_indcpa.o b2_array D
SABER_indcpa.o b3 C
SABER_indcpa.o b3_array D
SABER_indcpa.o b_array C
SABER_indcpa.o b_extra C
SABER_indcpa.o batch_64coefficient_multiplications T
SABER_indcpa.o c0 C
SABER_indcpa.o c1 C
SABER_indcpa.o c2 C
SABER_indcpa.o c3 C
SABER_indcpa.o c4 C
SABER_indcpa.o c5 C
SABER_indcpa.o c6 C
SABER_indcpa.o c_avx C
SABER_indcpa.o c_avx_extra C
SABER_indcpa.o clock1 C
SABER_indcpa.o clock2 C
SABER_indcpa.o clock_arith C
SABER_indcpa.o clock_load C
SABER_indcpa.o clock_matrix C
SABER_indcpa.o clock_matrix_vec C
SABER_indcpa.o clock_mul C
SABER_indcpa.o clock_samp C
SABER_indcpa.o clock_secret C
SABER_indcpa.o count_mul C
SABER_indcpa.o floor_round C
SABER_indcpa.o indcpa_kem_dec T
SABER_indcpa.o indcpa_kem_enc T
SABER_indcpa.o indcpa_kem_keypair T
SABER_indcpa.o int0_avx C
SABER_indcpa.o int30_avx C
SABER_indcpa.o int45_avx C
SABER_indcpa.o inv15_avx C
SABER_indcpa.o inv3_avx C
SABER_indcpa.o inv9_avx C
SABER_indcpa.o join_32coefficient_results T
SABER_indcpa.o karatsuba32_fork_avx_new T
SABER_indcpa.o karatsuba32_fork_avx_partial T
SABER_indcpa.o karatsuba32_fork_avx_partial1 T
SABER_indcpa.o karatsuba32_join_avx_new T
SABER_indcpa.o karatsuba32_join_avx_partial T
SABER_indcpa.o karatsuba32_join_avx_partial1 T
SABER_indcpa.o karatsuba32_join_avx_partial2 T
SABER_indcpa.o load_avx_input_new T
SABER_indcpa.o load_values T
SABER_indcpa.o mask C
SABER_indcpa.o mask_ar D
SABER_indcpa.o mask_load C
SABER_indcpa.o matrix_vec_count C
SABER_indcpa.o schoolbook_avx_new T
SABER_indcpa.o schoolbook_avx_new1 T
SABER_indcpa.o temp C
SABER_indcpa.o toom_cook_4way_avx T
SABER_indcpa.o transpose T
cbd.o cbd T
fips202.o KeccakF1600_StatePermute T
fips202.o cshake128_simple T
fips202.o cshake128_simple_absorb T
fips202.o cshake128_simple_squeezeblocks T
fips202.o sha3_256 T
fips202.o sha3_512 T
fips202.o shake128 T
kem.o clock1 C
kem.o clock2 C
kem.o clock_arith C
kem.o clock_load C
kem.o clock_matrix C
kem.o clock_matrix_vec C
kem.o clock_mul C
kem.o clock_samp C
kem.o clock_secret C
kem.o count_mul C
kem.o int0_avx C
kem.o int30_avx C
kem.o int45_avx C
kem.o inv15_avx C
kem.o inv3_avx C
kem.o inv9_avx C
kem.o mask C
kem.o matrix_vec_count C
pack_unpack.o BS2POLVEC T
pack_unpack.o BS2POLVECp T
pack_unpack.o BS2POLVECq T
pack_unpack.o POLVEC2BS T
pack_unpack.o POLVECp2BS T
pack_unpack.o POLVECq2BS T
pack_unpack.o SABER_pack10bit T
pack_unpack.o SABER_pack11bit T
pack_unpack.o SABER_pack13bit T
pack_unpack.o SABER_pack14bit T
pack_unpack.o SABER_pack_3bit T
pack_unpack.o SABER_pack_4bit T
pack_unpack.o SABER_pack_6bit T
pack_unpack.o SABER_poly_un_pack13bit T
pack_unpack.o SABER_un_pack10bit T
pack_unpack.o SABER_un_pack11bit T
pack_unpack.o SABER_un_pack13bit T
pack_unpack.o SABER_un_pack14bit T
pack_unpack.o SABER_un_pack3bit T
pack_unpack.o SABER_un_pack4bit T
pack_unpack.o SABER_un_pack6bit T
poly.o clock_matrix C
poly.o clock_matrix_vec C
poly.o clock_mul C
poly.o clock_secret C
poly.o count_mul C
poly.o matrix_vec_count C
poly.o poly_getnoise T
verify.o cmov T
verify.o verify T

Number of similar (compiler,implementation) pairs: 8, 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
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE avx2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE avx2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE avx2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE avx2

Namespace violations

Implementation: ref
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
SABER_indcpa.o GenMatrix T
SABER_indcpa.o InnerProd T
SABER_indcpa.o MatrixVectorMul T
SABER_indcpa.o POL2MSG T
SABER_indcpa.o clock1 C
SABER_indcpa.o clock2 C
SABER_indcpa.o clock_cl_mv C
SABER_indcpa.o clock_cl_sm C
SABER_indcpa.o clock_kp_mv C
SABER_indcpa.o clock_kp_sm C
SABER_indcpa.o indcpa_kem_dec T
SABER_indcpa.o indcpa_kem_enc T
SABER_indcpa.o indcpa_kem_keypair T
SABER_indcpa.o karatsuba_simple T
SABER_indcpa.o pol_mul T
SABER_indcpa.o print_poly2 T
SABER_indcpa.o reduce T
SABER_indcpa.o toom_cook_4way T
cbd.o cbd T
fips202.o KeccakF1600_StatePermute T
fips202.o cshake128_simple T
fips202.o cshake128_simple_absorb T
fips202.o cshake128_simple_squeezeblocks T
fips202.o sha3_256 T
fips202.o sha3_512 T
fips202.o shake128 T
kem.o clock1 C
kem.o clock2 C
kem.o clock_cl_mv C
kem.o clock_cl_sm C
kem.o clock_kp_mv C
kem.o clock_kp_sm C
pack_unpack.o BS2POL T
pack_unpack.o BS2POLVEC T
pack_unpack.o BS2POLVECp T
pack_unpack.o BS2POLVECq T
pack_unpack.o POLVEC2BS T
pack_unpack.o POLVECp2BS T
pack_unpack.o POLVECq2BS T
pack_unpack.o SABER_pack_3bit T
pack_unpack.o SABER_pack_4bit T
pack_unpack.o SABER_pack_6bit T
pack_unpack.o SABER_un_pack3bit T
pack_unpack.o SABER_un_pack4bit T
pack_unpack.o SABER_un_pack6bit T
poly.o GenSecret T
verify.o cmov T
verify.o verify T

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