Implementation notes: aarch64, rockpi4, crypto_decode/761x1531

Computer: rockpi4
Architecture: aarch64
CPU ID: unknown CPU ID
SUPERCOP version: 20190816
Operation: crypto_decode
Primitive: 761x1531
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
66085228 0 018308 800 760int16clang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091020190816
70215216 0 018228 800 760int16clang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091020190816
70215204 0 018260 800 760int16clang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091020190816
78475204 0 018260 800 760int16clang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091020190816
78475204 0 018260 800 760int16clang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091020190816
111517384 0 020468 800 760portableclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091020190816
115647376 0 020436 800 760portableclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091020190816
115647376 0 020436 800 760portableclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091020190816
140427388 0 020388 800 760portableclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091020190816
140427376 0 020436 800 760portableclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091020190816
144552276 0 012206 864 728int16gcc_-funroll-loops_-Os_-fomit-frame-pointer2019091020190816
148682280 0 012702 880 736int16gcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
148683784 0 015503 888 752int16gcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
148682280 0 012142 864 728int16gcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
156944576 0 017374 880 736int16gcc_-funroll-loops_-O2_-fomit-frame-pointer2019091020190816
156944576 0 017951 888 752int16gcc_-funroll-loops_-O3_-fomit-frame-pointer2019091020190816
156944176 0 017006 880 736int16gcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
156944176 0 017463 888 752int16gcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
161072376 0 012846 880 736int16gcc_-O2_-fomit-frame-pointer2019091020190816
161074120 0 015855 888 752int16gcc_-O3_-fomit-frame-pointer2019091020190816
161072164 0 012862 880 736int16gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091020190816
181724280 0 018414 880 736int16gcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
194112780 0 014519 888 752portablegcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
194113304 0 016679 888 752portablegcc_-funroll-loops_-O3_-fomit-frame-pointer2019091020190816
198242400 0 012870 880 736portablegcc_-O2_-fomit-frame-pointer2019091020190816
198242880 0 014623 888 752portablegcc_-O3_-fomit-frame-pointer2019091020190816
198243256 0 016078 880 736portablegcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
198242880 0 014719 888 752portablegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091020190816
272582100 0 011966 864 728int16gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091020190816
276712276 0 012206 864 728int16gcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
289103636 0 015479 888 752int16gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091020190816
293232280 0 012142 864 728int16gcc_-Os_-fomit-frame-pointer2019091020190816
293232200 0 012766 880 736int16gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091020190816
309751364 0 013111 888 752refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
322142784 0 016159 888 752refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019091020190816
322141372 0 013223 888 752refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091020190816
338662400 0 013102 880 736int16gcc_-O_-fomit-frame-pointer2019091020190816
338662400 0 013102 880 736int16gcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
338664280 0 018414 880 736int16gcc_-funroll-loops_-O_-fomit-frame-pointer2019091020190816
338662620 0 015446 880 736refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
346921300 0 011718 880 736refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
351051524 0 011406 864 728portablegcc_-Os_-fomit-frame-pointer2019091020190816
351051524 0 011406 864 728portablegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091020190816
351051300 0 011774 880 736refgcc_-O2_-fomit-frame-pointer2019091020190816
355181588 0 011542 864 728portablegcc_-funroll-loops_-Os_-fomit-frame-pointer2019091020190816
355181588 0 011542 864 728portablegcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
355181392 0 014476 800 760refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091020190816
363443312 0 016102 880 736portablegcc_-funroll-loops_-O2_-fomit-frame-pointer2019091020190816
367573256 0 016535 888 752portablegcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
371702308 0 012734 880 736portablegcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
371702400 0 012966 880 736portablegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091020190816
384091388 0 014444 800 760refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091020190816
388221388 0 014444 800 760refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091020190816
404741720 0 012422 880 736portablegcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
433651064 0 010910 864 728refgcc_-Os_-fomit-frame-pointer2019091020190816
433651064 0 010974 864 728refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019091020190816
433651064 0 010974 864 728refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
627761524 0 011406 864 728portablegcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
689711364 0 013127 888 752refgcc_-O3_-fomit-frame-pointer2019091020190816
697972788 0 016071 888 752refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
710361332 0 014332 800 760refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091020190816
718623056 0 017198 880 736portablegcc_-funroll-loops_-O_-fomit-frame-pointer2019091020190816
718623056 0 017198 880 736portablegcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
722751720 0 012422 880 736portablegcc_-O_-fomit-frame-pointer2019091020190816
722751720 0 012422 880 736portablegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091020190816
735142616 0 015398 880 736refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019091020190816
772311308 0 011886 880 736refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091020190816
788831388 0 014444 800 760refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091020190816
871431064 0 010910 864 728refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
879691060 0 010910 864 728refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091020190816
974681968 0 016102 880 736refgcc_-funroll-loops_-O_-fomit-frame-pointer2019091020190816
974681968 0 016102 880 736refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
982941144 0 011838 880 736refgcc_-O_-fomit-frame-pointer2019091020190816
982941144 0 011838 880 736refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
982941136 0 011838 880 736refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091020190816
1519846680 0 019662 864 736int16cc2019091020190816
1519846680 0 019662 864 736int16gcc2019091020190816
1519846680 0 019662 864 736int16gcc_-funroll-loops2019091020190816
1627223220 0 016214 864 736portablecc2019091020190816
1627223220 0 016214 864 736portablegcc_-funroll-loops2019091020190816
2234332776 0 015742 864 736refgcc_-funroll-loops2019091020190816
2366493220 0 016214 864 736portablegcc2019091020190816
3460942776 0 015742 864 736refcc2019091020190816
3460942776 0 015742 864 736refgcc2019091020190816

Compiler output

Implementation: avx
Security model: unknown
Compiler: cc
decode.c: decode.c:3:10: fatal error: immintrin.h: No such file or directory
decode.c: #include <immintrin.h>
decode.c: ^~~~~~~~~~~~~
decode.c: compilation terminated.

Number of similar (compiler,implementation) pairs: 23, namely:
CompilerImplementations
cc avx
gcc avx
gcc -O2 -fomit-frame-pointer avx
gcc -O3 -fomit-frame-pointer avx
gcc -O -fomit-frame-pointer avx
gcc -Os -fomit-frame-pointer avx
gcc -fno-schedule-insns -O2 -fomit-frame-pointer avx
gcc -fno-schedule-insns -O3 -fomit-frame-pointer avx
gcc -fno-schedule-insns -O -fomit-frame-pointer avx
gcc -fno-schedule-insns -Os -fomit-frame-pointer avx
gcc -funroll-loops avx
gcc -funroll-loops -O2 -fomit-frame-pointer avx
gcc -funroll-loops -O3 -fomit-frame-pointer avx
gcc -funroll-loops -O -fomit-frame-pointer avx
gcc -funroll-loops -Os -fomit-frame-pointer avx
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer avx
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer avx
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer avx
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer avx
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv avx
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv avx
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv avx
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv avx

Compiler output

Implementation: avx
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
decode.c: In file included from decode.c:3:
decode.c: In file included from /usr/lib/llvm-7/lib/clang/7.0.1/include/immintrin.h:28:
decode.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:64:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
decode.c: return (__m64)__builtin_ia32_vec_init_v2si(__i, 0);
decode.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
decode.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:143:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
decode.c: return (__m64)__builtin_ia32_packsswb((__v4hi)__m1, (__v4hi)__m2);
decode.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
decode.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:173:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
decode.c: return (__m64)__builtin_ia32_packssdw((__v2si)__m1, (__v2si)__m2);
decode.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
decode.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:203:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
decode.c: return (__m64)__builtin_ia32_packuswb((__v4hi)__m1, (__v4hi)__m2);
decode.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
decode.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:230:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
decode.c: return (__m64)__builtin_ia32_punpckhbw((__v8qi)__m1, (__v8qi)__m2);
decode.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
decode.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:253:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
decode.c: return (__m64)__builtin_ia32_punpckhwd((__v4hi)__m1, (__v4hi)__m2);
decode.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
decode.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:274:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
decode.c: return (__m64)__builtin_ia32_punpckhdq((__v2si)__m1, (__v2si)__m2);
decode.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
decode.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:301:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
decode.c: return (__m64)__builtin_ia32_punpcklbw((__v8qi)__m1, (__v8qi)__m2);
decode.c: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments avx
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments avx
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments avx
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments avx
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx