Implementation notes: amd64, ghf51, crypto_scalarmult/kummer

Computer: ghf51
Architecture: amd64
CPU ID: AuthenticAMD-00810f81-178bfbff
SUPERCOP version: 20200702
Operation: crypto_scalarmult
Primitive: kummer
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
4422609082 0 030666 784 1608avx2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
4429109082 0 030826 784 1608avx2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
4683389051 0 029309 784 1640avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071220200702
4687289088 0 030594 784 1576avx2clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
4711208737 0 027909 776 1608avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071220200702
51987021046 0 042466 784 1608avx2intclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
54340018556 0 040098 784 1608avx2intclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
57236415362 0 037861 784 1640avx2intgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071220200702
6243649082 0 030826 784 1608avx2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
6275628548 0 027644 776 1576avx2intclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
6286549627 0 032077 784 1640avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071220200702
6300848843 0 029733 784 1640avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071220200702
6394189529 0 030405 784 1640avxgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071220200702
6427468874 0 028100 776 1576avx2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
6696569560 0 028740 776 1576avxclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
6809669774 0 031266 784 1576avxclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
7166649737 0 029981 784 1640avxgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071220200702
7282349866 0 030133 784 1640avx2intgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071220200702
79817418556 0 040098 784 1608avx2intclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
8474709768 0 031338 784 1608avxclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
87224810313 0 032749 784 1640avxgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071220200702
9383149423 0 028581 776 1608avxgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071220200702
9471286519 0 025741 776 1608avx2intgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071220200702
94905210284 0 031173 784 1640avx2intgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071220200702
9695929768 0 031466 784 1608avxclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
9709449768 0 031466 784 1608avxclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
98524412639 0 034282 784 1608ref5uclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
132480414116 0 035618 784 1608ref5uclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
133733613959 0 035330 784 1576ref5uclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
148681014176 0 035634 784 1608ref5clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
155305812533 0 034138 784 1608ref5clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
15605464363 0 023500 776 1576ref5uclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
163433412533 0 034138 784 1608ref5clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
16467364972 0 025789 784 1640ref5ugcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071220200702
165552412639 0 034282 784 1608ref5uclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
16776244756 0 024917 784 1640ref5gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071220200702
16995424440 0 023580 776 1576ref5clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
17104369419 0 031765 784 1640ref5gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071220200702
17351369698 0 032085 784 1640ref5ugcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071220200702
17897885076 0 025269 784 1640ref5ugcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071220200702
186726814043 0 035394 784 1576ref5clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071220200702
18844804421 0 023541 776 1608ref5gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071220200702
18986504681 0 025485 784 1640ref5gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071220200702
21412564686 0 023821 776 1608ref5ugcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071220200702

Compiler output

Implementation: avx2int
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
smult.c: smult.c:36:8: error: always_inline function '_mm256_mul_epi32' requires target feature 'avx2', but would be inlined into function 'crypto_scalarmult_kummer_avx2int_gfe4x_mulconst' that is compiled without support for 'avx2'
smult.c: t0 = _mm256_mul_epi32(a->v[0],*b);
smult.c: ^
smult.c: smult.c:37:8: error: always_inline function '_mm256_mul_epi32' requires target feature 'avx2', but would be inlined into function 'crypto_scalarmult_kummer_avx2int_gfe4x_mulconst' that is compiled without support for 'avx2'
smult.c: t1 = _mm256_mul_epi32(a->v[1],*b);
smult.c: ^
smult.c: smult.c:38:30: error: always_inline function '_mm256_srli_epi64' requires target feature 'avx2', but would be inlined into function 'crypto_scalarmult_kummer_avx2int_gfe4x_mulconst' that is compiled without support for 'avx2'
smult.c: t1 = _mm256_add_epi64(t1,_mm256_srli_epi64(t0,26)); t0 &= mask26;
smult.c: ^
smult.c: smult.c:38:10: error: always_inline function '_mm256_add_epi64' requires target feature 'avx2', but would be inlined into function 'crypto_scalarmult_kummer_avx2int_gfe4x_mulconst' that is compiled without support for 'avx2'
smult.c: t1 = _mm256_add_epi64(t1,_mm256_srli_epi64(t0,26)); t0 &= mask26;
smult.c: ^
smult.c: smult.c:39:8: error: always_inline function '_mm256_mul_epi32' requires target feature 'avx2', but would be inlined into function 'crypto_scalarmult_kummer_avx2int_gfe4x_mulconst' that is compiled without support for 'avx2'
smult.c: t2 = _mm256_mul_epi32(a->v[2],*b);
smult.c: ^
smult.c: smult.c:40:8: error: always_inline function '_mm256_mul_epi32' requires target feature 'avx2', but would be inlined into function 'crypto_scalarmult_kummer_avx2int_gfe4x_mulconst' that is compiled without support for 'avx2'
smult.c: t3 = _mm256_mul_epi32(a->v[3],*b);
smult.c: ^
smult.c: smult.c:41:8: error: always_inline function '_mm256_mul_epi32' requires target feature 'avx2', but would be inlined into function 'crypto_scalarmult_kummer_avx2int_gfe4x_mulconst' that is compiled without support for 'avx2'
smult.c: t4 = _mm256_mul_epi32(a->v[4],*b);
smult.c: ^
smult.c: smult.c:42:30: error: always_inline function '_mm256_srli_epi64' requires target feature 'avx2', but would be inlined into function 'crypto_scalarmult_kummer_avx2int_gfe4x_mulconst' that is compiled without support for 'avx2'
smult.c: t3 = _mm256_add_epi64(t3,_mm256_srli_epi64(t2,26)); t2 &= mask26;
smult.c: ^
smult.c: smult.c:42:10: error: always_inline function '_mm256_add_epi64' requires target feature 'avx2', but would be inlined into function 'crypto_scalarmult_kummer_avx2int_gfe4x_mulconst' that is compiled without support for 'avx2'
smult.c: ...

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

Namespace violations

Implementation: avx
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
consts.o _2 R
consts.o _2p106 R
consts.o _2p107m2p86 R
consts.o _2p127 R
consts.o _2p127m2p85 R
consts.o _2p128m2p107 R
consts.o _2p128m2p86 R
consts.o _2p22 R
consts.o _2p23 R
consts.o _2p43 R
consts.o _2p43m1 R
consts.o _2p44m2 R
consts.o _2p44m2p23 R
consts.o _2p64 R
consts.o _2p65m2p44 R
consts.o _2p85 R
consts.o _2p85m2p43 R
consts.o _2p86m2p44 R
consts.o _2p86m2p65 R
consts.o _2pm106 R
consts.o _2pm127 R
consts.o _2pm22 R
consts.o _2pm43 R
consts.o _2pm64 R
consts.o _2pm85 R
consts.o _one R
consts.o _two R
consts.o alpha106 R
consts.o alpha127 R
consts.o alpha22 R
consts.o alpha43 R
consts.o alpha64 R
consts.o alpha85 R
consts.o hadstepconsts R
consts.o mask63 R
consts.o minusz R
consts.o newABCD R
consts.o newabcd R
consts.o stepconsts R
gfe.o gfe4x3limb_split T
gfe.o gfe4x3limb_unpack T
gfe.o gfe4x_unpack T
gfe.o gfe_invert T
gfe.o gfe_pack T
gfe.o gfe_unpack T
gfe4x3limb_freeze.o _gfe4x3limb_freeze T
gfe4x3limb_freeze.o gfe4x3limb_freeze T
gfe_mul.o _gfe_mul T
gfe_mul.o gfe_mul T
gfe_nsquare.o _gfe_nsquare T
gfe_nsquare.o gfe_nsquare T
ladder.o _ladder T
ladder.o ladder T
znegate.o _gfe4x_znegate T
znegate.o gfe4x_znegate T

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

Namespace violations

Implementation: avx2
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
consts.o _1111 R
consts.o _2 R
consts.o _2p106 R
consts.o _2p107m2p86 R
consts.o _2p127 R
consts.o _2p127m2p85 R
consts.o _2p128m2p107 R
consts.o _2p128m2p86 R
consts.o _2p22 R
consts.o _2p23 R
consts.o _2p43 R
consts.o _2p43m1 R
consts.o _2p44m2 R
consts.o _2p44m2p23 R
consts.o _2p64 R
consts.o _2p65m2p44 R
consts.o _2p85 R
consts.o _2p85m2p43 R
consts.o _2p86m2p44 R
consts.o _2p86m2p65 R
consts.o _2pm106 R
consts.o _2pm127 R
consts.o _2pm22 R
consts.o _2pm43 R
consts.o _2pm64 R
consts.o _2pm85 R
consts.o _one R
consts.o _two R
consts.o alpha106 R
consts.o alpha127 R
consts.o alpha22 R
consts.o alpha43 R
consts.o alpha64 R
consts.o alpha85 R
consts.o hadstepconsts R
consts.o mask63 R
consts.o minusz R
consts.o newABCD R
consts.o newabcd R
consts.o stepconsts R
gfe.o gfe4x3limb_split T
gfe.o gfe4x3limb_unpack T
gfe.o gfe4x_unpack T
gfe.o gfe_invert T
gfe.o gfe_pack T
gfe.o gfe_unpack T
gfe4x3limb_freeze.o _gfe4x3limb_freeze T
gfe4x3limb_freeze.o gfe4x3limb_freeze T
gfe_mul.o _gfe_mul T
gfe_mul.o gfe_mul T
gfe_nsquare.o _gfe_nsquare T
gfe_nsquare.o gfe_nsquare T
ladder.o _ladder T
ladder.o ladder T
znegate.o _gfe4x_znegate T
znegate.o gfe4x_znegate T

Number of similar (compiler,implementation) pairs: 9, 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
clang -mcpu=native -O3 -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