Implementation notes: aarch64, rockpi4, crypto_decode/653x1541

Computer: rockpi4
Architecture: aarch64
CPU ID: unknown CPU ID
SUPERCOP version: 20190816
Operation: crypto_decode
Primitive: 653x1541
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
53697012 0 020100 800 760int16clang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091020190816
57826992 0 020004 800 760int16clang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091020190816
57826972 0 020036 800 760int16clang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091020190816
66086972 0 020036 800 760int16clang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091020190816
66086972 0 020036 800 760int16clang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091020190816
94998088 0 021092 800 760portableclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091020190816
94998068 0 021124 800 760portableclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091020190816
94998096 0 021172 800 760portableclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091020190816
115648068 0 021124 800 760portableclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091020190816
115648068 0 021124 800 760portableclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091020190816
128033548 0 015271 888 752int16gcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
128032120 0 012046 864 728int16gcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
132164016 0 016734 880 736int16gcc_-funroll-loops_-O2_-fomit-frame-pointer2019091020190816
132163860 0 017079 888 752int16gcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
136293696 0 015447 888 752int16gcc_-O3_-fomit-frame-pointer2019091020190816
136292056 0 012614 880 736int16gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091020190816
140422012 0 012702 880 736int16gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091020190816
156942192 0 012894 880 736int16gcc_-O_-fomit-frame-pointer2019091020190816
156942192 0 012894 880 736int16gcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
156943976 0 018006 880 736int16gcc_-funroll-loops_-O_-fomit-frame-pointer2019091020190816
156943084 0 016375 888 752portablegcc_-funroll-loops_-O3_-fomit-frame-pointer2019091020190816
161072084 0 012510 880 736portablegcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
161072540 0 014279 888 752portablegcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
165202628 0 014455 888 752portablegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091020190816
227154016 0 017311 888 752int16gcc_-funroll-loops_-O3_-fomit-frame-pointer2019091020190816
235412120 0 012046 864 728int16gcc_-funroll-loops_-Os_-fomit-frame-pointer2019091020190816
235411952 0 011806 864 728int16gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091020190816
239543860 0 016622 880 736int16gcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
247802208 0 012678 880 736int16gcc_-O2_-fomit-frame-pointer2019091020190816
247803292 0 015127 888 752int16gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091020190816
251932120 0 011982 864 728int16gcc_-Os_-fomit-frame-pointer2019091020190816
251932120 0 011982 864 728int16gcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
268452136 0 012558 880 736int16gcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
268451428 0 013175 888 752refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
276712708 0 015999 888 752refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019091020190816
284973084 0 015798 880 736portablegcc_-funroll-loops_-O2_-fomit-frame-pointer2019091020190816
289103976 0 018006 880 736int16gcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
293231316 0 014316 800 760refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091020190816
293232632 0 015382 880 736refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
301491408 0 011286 864 728portablegcc_-Os_-fomit-frame-pointer2019091020190816
301491300 0 011718 880 736refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
305621480 0 011414 864 728portablegcc_-funroll-loops_-Os_-fomit-frame-pointer2019091020190816
305623004 0 015774 880 736portablegcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
305623004 0 016231 888 752portablegcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
305621480 0 011414 864 728portablegcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
305621300 0 011774 880 736refgcc_-O2_-fomit-frame-pointer2019091020190816
309751376 0 014460 800 760refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091020190816
313882620 0 014375 888 752portablegcc_-O3_-fomit-frame-pointer2019091020190816
318012152 0 012622 880 736portablegcc_-O2_-fomit-frame-pointer2019091020190816
318012152 0 012718 880 736portablegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091020190816
330401372 0 014428 800 760refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091020190816
346922676 0 016734 880 736portablegcc_-funroll-loops_-O_-fomit-frame-pointer2019091020190816
346922676 0 016734 880 736portablegcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
351051624 0 012326 880 736portablegcc_-O_-fomit-frame-pointer2019091020190816
351051624 0 012326 880 736portablegcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
351051624 0 012326 880 736portablegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091020190816
371701064 0 010974 864 728refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019091020190816
371701060 0 010910 864 728refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091020190816
421261988 0 016022 880 736refgcc_-funroll-loops_-O_-fomit-frame-pointer2019091020190816
429521144 0 011838 880 736refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
433651144 0 011838 880 736refgcc_-O_-fomit-frame-pointer2019091020190816
433651136 0 011838 880 736refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091020190816
541031408 0 011286 864 728portablegcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
541031408 0 011286 864 728portablegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091020190816
594721428 0 013191 888 752refgcc_-O3_-fomit-frame-pointer2019091020190816
594721428 0 013279 888 752refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091020190816
602982712 0 015927 888 752refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
631892628 0 015334 880 736refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019091020190816
664931308 0 011886 880 736refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091020190816
677321372 0 014428 800 760refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091020190816
677321372 0 014428 800 760refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091020190816
747531064 0 010910 864 728refgcc_-Os_-fomit-frame-pointer2019091020190816
747531064 0 010910 864 728refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
747531064 0 010974 864 728refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
805356080 0 019070 864 736int16gcc2019091020190816
817746080 0 019070 864 736int16cc2019091020190816
817746080 0 019070 864 736int16gcc_-funroll-loops2019091020190816
838391988 0 016022 880 736refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
1375292992 0 015990 864 736portablecc2019091020190816
1375292992 0 015990 864 736portablegcc_-funroll-loops2019091020190816
1924582776 0 015742 864 736refcc2019091020190816
1941102776 0 015742 864 736refgcc_-funroll-loops2019091020190816
2027832992 0 015990 864 736portablegcc2019091020190816
2973602776 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