Implementation notes: aarch64, rockpi4, crypto_core/aes128encrypt

Computer: rockpi4
Architecture: aarch64
CPU ID: unknown CPU ID
SUPERCOP version: 20190816
Operation: crypto_core
Primitive: aes128encrypt
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
4131404 0 015268 800 792dolbeau/armv8cryptoclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091020190816
4131460 0 012894 880 768dolbeau/armv8cryptogcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091020190816
4132088 0 014791 888 784dolbeau/armv8cryptogcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091020190816
4131500 0 012974 880 768dolbeau/armv8cryptogcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091020190816
4131460 0 012054 864 760dolbeau/armv8cryptogcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091020190816
8262800 0 016612 800 792dolbeau/std-1ftclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091020190816
8262800 0 016660 800 792dolbeau/std-1ftclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091020190816
8262800 0 016660 800 792dolbeau/std-1ftclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091020190816
8262800 0 016660 800 792dolbeau/std-1ftclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091020190816
8262792 0 016644 800 792dolbeau/std-1ftclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091020190816
8262980 0 014302 880 768dolbeau/std-1ftgcc_-O2_-fomit-frame-pointer2019091020190816
8263560 0 016159 888 784dolbeau/std-1ftgcc_-O3_-fomit-frame-pointer2019091020190816
8263008 0 014478 880 768dolbeau/std-1ftgcc_-O_-fomit-frame-pointer2019091020190816
8263008 0 014478 880 768dolbeau/std-1ftgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
8263528 0 016918 880 768dolbeau/std-1ftgcc_-funroll-loops_-O2_-fomit-frame-pointer2019091020190816
8263568 0 017535 888 784dolbeau/std-1ftgcc_-funroll-loops_-O3_-fomit-frame-pointer2019091020190816
8263600 0 018294 880 768dolbeau/std-1ftgcc_-funroll-loops_-O_-fomit-frame-pointer2019091020190816
8262956 0 013598 864 760dolbeau/std-1ftgcc_-funroll-loops_-Os_-fomit-frame-pointer2019091020190816
8263480 0 016966 880 768dolbeau/std-1ftgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
8263516 0 017479 888 784dolbeau/std-1ftgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
8262956 0 013598 864 760dolbeau/std-1ftgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
8262980 0 014398 880 768dolbeau/std-1ftgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091020190816
8263556 0 016263 888 784dolbeau/std-1ftgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091020190816
8263832 0 017636 800 792dolbeau/std-2ftclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091020190816
8263832 0 017684 800 792dolbeau/std-2ftclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091020190816
8263832 0 017684 800 792dolbeau/std-2ftclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091020190816
8263832 0 017684 800 792dolbeau/std-2ftclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091020190816
8263836 0 017700 800 792dolbeau/std-2ftclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091020190816
8263968 0 015294 880 768dolbeau/std-2ftgcc_-O2_-fomit-frame-pointer2019091020190816
8264560 0 017159 888 784dolbeau/std-2ftgcc_-O3_-fomit-frame-pointer2019091020190816
8263964 0 014550 864 760dolbeau/std-2ftgcc_-Os_-fomit-frame-pointer2019091020190816
8263952 0 015222 880 768dolbeau/std-2ftgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
8264536 0 017127 888 784dolbeau/std-2ftgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
8264012 0 015486 880 768dolbeau/std-2ftgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
8263964 0 014550 864 760dolbeau/std-2ftgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
8264552 0 017942 880 768dolbeau/std-2ftgcc_-funroll-loops_-O2_-fomit-frame-pointer2019091020190816
8264560 0 018543 888 784dolbeau/std-2ftgcc_-funroll-loops_-O3_-fomit-frame-pointer2019091020190816
8263964 0 014614 864 760dolbeau/std-2ftgcc_-funroll-loops_-Os_-fomit-frame-pointer2019091020190816
8264500 0 017990 880 768dolbeau/std-2ftgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
8264536 0 018487 888 784dolbeau/std-2ftgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
8264612 0 019302 880 768dolbeau/std-2ftgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
8263964 0 014614 864 760dolbeau/std-2ftgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
8263968 0 015390 880 768dolbeau/std-2ftgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091020190816
8264576 0 017263 888 784dolbeau/std-2ftgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091020190816
8264012 0 015486 880 768dolbeau/std-2ftgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091020190816
8263964 0 014550 864 760dolbeau/std-2ftgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091020190816
8265904 0 019716 800 792dolbeau/std-4ftclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091020190816
8265904 0 019764 800 792dolbeau/std-4ftclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091020190816
8265904 0 019764 800 792dolbeau/std-4ftclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091020190816
8265904 0 019764 800 792dolbeau/std-4ftclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091020190816
8265908 0 019764 800 792dolbeau/std-4ftclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091020190816
8266060 0 017382 880 768dolbeau/std-4ftgcc_-O2_-fomit-frame-pointer2019091020190816
8266652 0 019263 888 784dolbeau/std-4ftgcc_-O3_-fomit-frame-pointer2019091020190816
8266076 0 017550 880 768dolbeau/std-4ftgcc_-O_-fomit-frame-pointer2019091020190816
8266028 0 016614 864 760dolbeau/std-4ftgcc_-Os_-fomit-frame-pointer2019091020190816
8266016 0 017286 880 768dolbeau/std-4ftgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
8266592 0 019191 888 784dolbeau/std-4ftgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
8266028 0 016614 864 760dolbeau/std-4ftgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
8266620 0 020006 880 768dolbeau/std-4ftgcc_-funroll-loops_-O2_-fomit-frame-pointer2019091020190816
8266660 0 020639 888 784dolbeau/std-4ftgcc_-funroll-loops_-O3_-fomit-frame-pointer2019091020190816
8266028 0 016678 864 760dolbeau/std-4ftgcc_-funroll-loops_-Os_-fomit-frame-pointer2019091020190816
8266556 0 020054 880 768dolbeau/std-4ftgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
8266592 0 020551 888 784dolbeau/std-4ftgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
8266028 0 016678 864 760dolbeau/std-4ftgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
8266060 0 017494 880 768dolbeau/std-4ftgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091020190816
8266624 0 019327 888 784dolbeau/std-4ftgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091020190816
8266076 0 017550 880 768dolbeau/std-4ftgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091020190816
8266028 0 016614 864 760dolbeau/std-4ftgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091020190816
826132 0 014352 880 768opensslcc2019120120190816
82676 0 014086 816 792opensslclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019120120190816
82676 0 014150 816 792opensslclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019120120190816
82676 0 014150 816 792opensslclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019120120190816
82676 0 014150 816 792opensslclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019120120190816
82676 0 014150 816 792opensslclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019120120190816
826132 0 014352 880 768opensslgcc2019120120190816
826132 0 011672 896 768opensslgcc_-O2_-fomit-frame-pointer2019120120190816
826132 0 012945 904 784opensslgcc_-O3_-fomit-frame-pointer2019120120190816
826132 0 011768 896 768opensslgcc_-O_-fomit-frame-pointer2019120120190816
826132 0 010896 880 760opensslgcc_-Os_-fomit-frame-pointer2019120120190816
826132 0 011616 896 768opensslgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019120120190816
826132 0 012945 904 784opensslgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019120120190816
826132 0 011768 896 768opensslgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019120120190816
826132 0 010896 880 760opensslgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019120120190816
826132 0 014352 880 768opensslgcc_-funroll-loops2019120120190816
826132 0 013736 896 768opensslgcc_-funroll-loops_-O2_-fomit-frame-pointer2019120120190816
826132 0 014321 904 784opensslgcc_-funroll-loops_-O3_-fomit-frame-pointer2019120120190816
826132 0 014992 896 768opensslgcc_-funroll-loops_-O_-fomit-frame-pointer2019120120190816
826132 0 010960 880 760opensslgcc_-funroll-loops_-Os_-fomit-frame-pointer2019120120190816
826132 0 013840 896 768opensslgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019120120190816
826132 0 014305 904 784opensslgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019120120190816
826132 0 014992 896 768opensslgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019120120190816
826132 0 010960 880 760opensslgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019120120190816
826132 0 011768 896 768opensslgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019120120190816
826132 0 013041 904 784opensslgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019120120190816
826132 0 011768 896 768opensslgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019120120190816
826132 0 010896 880 760opensslgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019120120190816
12392956 0 013534 864 760dolbeau/std-1ftgcc_-Os_-fomit-frame-pointer2019091020190816
12392936 0 014214 880 768dolbeau/std-1ftgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
12393516 0 016119 888 784dolbeau/std-1ftgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
12392956 0 013534 864 760dolbeau/std-1ftgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
12393600 0 018294 880 768dolbeau/std-1ftgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
12393008 0 014478 880 768dolbeau/std-1ftgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091020190816
12392956 0 013534 864 760dolbeau/std-1ftgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091020190816
12394012 0 015486 880 768dolbeau/std-2ftgcc_-O_-fomit-frame-pointer2019091020190816
12394612 0 019302 880 768dolbeau/std-2ftgcc_-funroll-loops_-O_-fomit-frame-pointer2019091020190816
12396076 0 017550 880 768dolbeau/std-4ftgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
12396676 0 021366 880 768dolbeau/std-4ftgcc_-funroll-loops_-O_-fomit-frame-pointer2019091020190816
12396676 0 021366 880 768dolbeau/std-4ftgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
20653404 14336 017462 15200 768dolbeau/std-4ftcc2019091020190816
20653404 14336 017462 15200 768dolbeau/std-4ftgcc2019091020190816
20653404 14336 017462 15200 768dolbeau/std-4ftgcc_-funroll-loops2019091020190816
24783512 14336 017558 15200 768dolbeau/std-2ftgcc2019091020190816
28913560 14336 017606 15200 768dolbeau/std-1ftgcc2019091020190816
28913560 14336 017606 15200 768dolbeau/std-1ftgcc_-funroll-loops2019091020190816
49563512 14336 017558 15200 768dolbeau/std-2ftcc2019091020190816
49563512 14336 017558 15200 768dolbeau/std-2ftgcc_-funroll-loops2019091020190816
53693560 14336 017606 15200 768dolbeau/std-1ftcc2019091020190816
2254984136 0 016847 888 784refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091020190816
2940564280 0 016911 888 784refgcc_-O3_-fomit-frame-pointer2019091020190816
2957084344 0 018343 888 784refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019091020190816
2965344336 0 018319 888 784refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
3175972936 0 016772 800 792refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091020190816
3180103188 0 017028 800 792refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091020190816
3316393188 0 016980 800 792refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091020190816
3407254232 0 016855 888 784refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091020190816
3539412964 0 016366 880 768refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019091020190816
4637993188 0 017028 800 792refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091020190816
4646252976 0 016470 880 768refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
4704073188 0 017028 800 792refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091020190816
6356073232 0 017902 880 768refgcc_-funroll-loops_-O_-fomit-frame-pointer2019091020190816
6356073232 0 017902 880 768refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
10006991752 0 013078 880 768refgcc_-O2_-fomit-frame-pointer2019091020190816
10031771632 0 012222 864 760refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
10052421692 0 012334 864 760refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019091020190816
10052421692 0 012334 864 760refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091020190816
10081331812 0 013254 880 768refgcc_-O_-fomit-frame-pointer2019091020190816
10089591656 0 012238 864 760refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091020190816
10329131872 0 013318 880 768refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091020190816
17482291796 0 013230 880 768refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091020190816
17635101632 0 012222 864 760refgcc_-Os_-fomit-frame-pointer2019091020190816
19010391732 0 013014 880 768refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091020190816
22120281812 0 013254 880 768refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091020190816
46479023712 0 021838 864 768refcc2019091020190816
46582273712 0 021838 864 768refgcc_-funroll-loops2019091020190816
95816003712 0 021838 864 768refgcc2019091020190816

Compiler output

Implementation: dolbeau/armv8crypto
Security model: unknown
Compiler: cc
core.c: In file included from core.c:9:
core.c: core.c: In function 'aes128_armv8_encrypt':
core.c: /usr/lib/gcc/aarch64-linux-gnu/8/include/arm_neon.h:12426:1: error: inlining failed in call to always_inline 'vaeseq_u8': target specific option mismatch
core.c: vaeseq_u8 (uint8x16_t data, uint8x16_t key)
core.c: ^~~~~~~~~
core.c: core.c:46:10: note: called from here
core.c: temp = vaeseq_u8(temp, vld1q_u8((rkeys+144)));
core.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
core.c: In file included from core.c:9:
core.c: /usr/lib/gcc/aarch64-linux-gnu/8/include/arm_neon.h:12426:1: error: inlining failed in call to always_inline 'vaeseq_u8': target specific option mismatch
core.c: vaeseq_u8 (uint8x16_t data, uint8x16_t key)
core.c: ^~~~~~~~~
core.c: core.c:46:10: note: called from here
core.c: temp = vaeseq_u8(temp, vld1q_u8((rkeys+144)));
core.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 19, namely:
CompilerImplementations
cc dolbeau/armv8crypto
gcc dolbeau/armv8crypto
gcc -O2 -fomit-frame-pointer dolbeau/armv8crypto
gcc -O3 -fomit-frame-pointer dolbeau/armv8crypto
gcc -O -fomit-frame-pointer dolbeau/armv8crypto
gcc -Os -fomit-frame-pointer dolbeau/armv8crypto
gcc -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/armv8crypto
gcc -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/armv8crypto
gcc -fno-schedule-insns -O -fomit-frame-pointer dolbeau/armv8crypto
gcc -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops dolbeau/armv8crypto
gcc -funroll-loops -O2 -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -O3 -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -O -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -Os -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer dolbeau/armv8crypto
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/armv8crypto

Compiler output

Implementation: dolbeau/armv8crypto
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
core.c: core.c:46:10: warning: implicit declaration of function 'vaeseq_u8' is invalid in C99 [-Wimplicit-function-declaration]
core.c: temp = vaeseq_u8(temp, vld1q_u8((rkeys+144)));
core.c: ^
core.c: core.c:46:8: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
core.c: temp = vaeseq_u8(temp, vld1q_u8((rkeys+144)));
core.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
core.c: 1 warning and 1 error generated.

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments dolbeau/armv8crypto
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments dolbeau/armv8crypto
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments dolbeau/armv8crypto
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments dolbeau/armv8crypto