Implementation notes: amd64, ghf51, crypto_kem/lac256

Computer: ghf51
Architecture: amd64
CPU ID: AuthenticAMD-00810f81-178bfbff
SUPERCOP version: 20200702
Operation: crypto_kem
Primitive: lac256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
81923429034 78016 046638 78904 2696avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071720200702
98943025225 77992 042667 78856 2632avx2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071720200702
100989216875 77992 032781 78848 2632avx2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071720200702
105736831313 77992 048115 78856 2632avx2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071720200702
107244825225 77992 042667 78856 2632avx2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071720200702
115125421440 78016 038230 78904 2696avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071720200702
129768616218 78016 032086 78896 2664avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071720200702
133962420363 78016 036758 78904 2696avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071720200702
280540027915 77992 044803 78856 2632optclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071720200702
300807024227 77992 041755 78856 2632optclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071720200702
301358216989 77992 032909 78848 2632optclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071720200702
302096624227 77992 041755 78856 2632optclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071720200702
310013629514 77992 046259 78856 2632optclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071720200702
463567020959 78016 037350 78904 2696optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071720200702
565505216742 78016 032614 78896 2664optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071720200702
585730623624 0 041091 856 1584refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071720200702
829907029022 78016 046622 78904 2696optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071720200702
857773829433 0 046251 856 1584refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071720200702
943389216278 0 032165 848 1584refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071720200702
970041826975 0 044350 880 1616refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071720200702
1152517623624 0 041091 856 1584refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071720200702
1652635428744 0 045451 856 1584refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071720200702
2458523620859 0 037438 880 1616refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071720200702
2607542619764 0 035950 880 1616refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071720200702
3625073415700 0 031374 872 1584refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071720200702

Checksum failure

Implementation: opt
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
26c27ad8a75f280cab6a5227338dd1d1e63d765892d6226a2b0f03e979521ab3
Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE opt

Compiler output

Implementation: avx2
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
bin-lwe.c: bin-lwe.c:91:10: error: always_inline function '_mm256_set_epi16' requires target feature 'avx', but would be inlined into function 'poly_mul' that is compiled without support for 'avx'
bin-lwe.c: tmp_one=_mm256_set_epi16(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1);
bin-lwe.c: ^
bin-lwe.c: bin-lwe.c:103:9: error: always_inline function '_mm256_setzero_si256' requires target feature 'avx', but would be inlined into function 'poly_mul' that is compiled without support for 'avx'
bin-lwe.c: tmp2 =_mm256_setzero_si256();
bin-lwe.c: ^
bin-lwe.c: bin-lwe.c:106:11: error: always_inline function '_mm256_loadu_si256' requires target feature 'avx', but would be inlined into function 'poly_mul' that is compiled without support for 'avx'
bin-lwe.c: tmp0 = _mm256_loadu_si256((__m256i *)(v_p+j));
bin-lwe.c: ^
bin-lwe.c: bin-lwe.c:107:11: error: always_inline function '_mm256_loadu_si256' requires target feature 'avx', but would be inlined into function 'poly_mul' that is compiled without support for 'avx'
bin-lwe.c: tmp1 = _mm256_loadu_si256((__m256i *)(s+j));
bin-lwe.c: ^
bin-lwe.c: bin-lwe.c:108:11: error: always_inline function '_mm256_maddubs_epi16' requires target feature 'avx2', but would be inlined into function 'poly_mul' that is compiled without support for 'avx2'
bin-lwe.c: tmp0 = _mm256_maddubs_epi16(tmp0, tmp1);
bin-lwe.c: ^
bin-lwe.c: bin-lwe.c:109:11: error: always_inline function '_mm256_add_epi16' requires target feature 'avx2', but would be inlined into function 'poly_mul' that is compiled without support for 'avx2'
bin-lwe.c: tmp2 = _mm256_add_epi16(tmp2, tmp0);
bin-lwe.c: ^
bin-lwe.c: bin-lwe.c:111:11: error: always_inline function '_mm256_loadu_si256' requires target feature 'avx', but would be inlined into function 'poly_mul' that is compiled without support for 'avx'
bin-lwe.c: tmp0 = _mm256_loadu_si256((__m256i *)(v_p+j+32));
bin-lwe.c: ^
bin-lwe.c: bin-lwe.c:112:11: error: always_inline function '_mm256_loadu_si256' requires target feature 'avx', but would be inlined into function 'poly_mul' that is compiled without support for 'avx'
bin-lwe.c: tmp1 = _mm256_loadu_si256((__m256i *)(s+j+32));
bin-lwe.c: ^
bin-lwe.c: bin-lwe.c:113:11: error: always_inline function '_mm256_maddubs_epi16' requires target feature 'avx2', but would be inlined into function 'poly_mul' that is compiled without support for 'avx2'
bin-lwe.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
ake.o crypto_ake_alice_receive T
ake.o crypto_ake_alice_send T
ake.o crypto_ake_bob_receive T
bch.o compute_even_syndromes T
bch.o decode_bch T
bch.o encode_bch T
bch.o free_bch T
bch.o init_bch T
bin-lwe.o gen_a T
bin-lwe.o gen_psi T
bin-lwe.o poly_aff T
bin-lwe.o poly_mul T
ecc.o a_log_tab D
ecc.o a_pow_tab D
ecc.o cache C
ecc.o ecc_bch D
ecc.o ecc_buf C
ecc.o ecc_buf2 C
ecc.o ecc_dec T
ecc.o ecc_enc T
ecc.o ecc_free T
ecc.o ecc_init T
ecc.o mod8_tab D
ecc.o syn C
ecc.o xi_tab D
encrypt.o crypto_encrypt T
encrypt.o crypto_encrypt_keypair T
encrypt.o crypto_encrypt_open T
encrypt.o kg T
encrypt.o kg_seed T
encrypt.o pke_dec T
encrypt.o pke_enc T
encrypt.o pke_enc_seed T
ke.o crypto_ke_alice_receive T
ke.o crypto_ke_alice_send T
ke.o crypto_ke_bob_receive T
kem.o kem_dec_fo T
kem.o kem_enc_fo T
kem.o kem_enc_fo_seed T
rand.o gen_seed T
rand.o hash T
rand.o pseudo_random_bytes T
rand.o random_bytes T
rng.o AES256_CTR_DRBG_Update T
rng.o AES256_ECB T
rng.o DRBG_ctx C
rng.o handleErrors T
rng.o seedexpander T
rng.o seedexpander_init T

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

Namespace violations

Implementation: ref
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
ake.o crypto_ake_alice_receive T
ake.o crypto_ake_alice_send T
ake.o crypto_ake_bob_receive T
bch.o compute_even_syndromes T
bch.o decode_bch T
bch.o encode_bch T
bch.o free_bch T
bch.o init_bch T
bin-lwe.o gen_a T
bin-lwe.o gen_psi T
bin-lwe.o poly_aff T
bin-lwe.o poly_mul T
ecc.o ecc_bch C
ecc.o ecc_dec T
ecc.o ecc_enc T
encrypt.o crypto_encrypt T
encrypt.o crypto_encrypt_keypair T
encrypt.o crypto_encrypt_open T
encrypt.o kg T
encrypt.o kg_seed T
encrypt.o pke_dec T
encrypt.o pke_enc T
encrypt.o pke_enc_seed T
ke.o crypto_ke_alice_receive T
ke.o crypto_ke_alice_send T
ke.o crypto_ke_bob_receive T
kem.o kem_dec_fo T
kem.o kem_enc_fo T
kem.o kem_enc_fo_seed T
rand.o gen_seed T
rand.o hash T
rand.o pseudo_random_bytes T
rand.o random_bytes T
rng.o AES256_CTR_DRBG_Update T
rng.o AES256_ECB T
rng.o DRBG_ctx C
rng.o handleErrors T
rng.o seedexpander T
rng.o seedexpander_init 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