Implementation notes: aarch64, rockpi4, crypto_aead/hs1sivhiv2

Computer: rockpi4
Architecture: aarch64
CPU ID: unknown CPU ID
SUPERCOP version: 20190816
Operation: crypto_aead
Primitive: hs1sivhiv2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
3262714332 0 032492 816 888fasterclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091220190816
3262714332 0 032556 816 888fasterclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091220190816
355189884 0 028060 816 888dolbeau/armv8cryptoclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091220190816
355189884 0 028108 816 888dolbeau/armv8cryptoclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091220190816
404749948 0 028188 816 888dolbeau/armv8cryptoclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091220190816
4336514712 0 032359 936 880fastergcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091220190816
454309884 0 028108 816 888dolbeau/armv8cryptoclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091220190816
454309884 0 028108 816 888dolbeau/armv8cryptoclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091220190816
4543024088 0 042518 928 864dolbeau/armv8cryptogcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091220190816
458438216 0 023630 912 856dolbeau/armv8cryptogcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091220190816
4666919960 0 036246 928 864dolbeau/armv8cryptogcc_-O2_-fomit-frame-pointer2019091220190816
4708223156 0 040719 936 880dolbeau/armv8cryptogcc_-O3_-fomit-frame-pointer2019091220190816
4708219968 0 036358 928 864dolbeau/armv8cryptogcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091220190816
4708223132 0 040791 936 880dolbeau/armv8cryptogcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091220190816
4749524044 0 042390 928 864dolbeau/armv8cryptogcc_-funroll-loops_-O2_-fomit-frame-pointer2019091220190816
4749524684 0 043607 936 880dolbeau/armv8cryptogcc_-funroll-loops_-O3_-fomit-frame-pointer2019091220190816
483215182 0 023348 816 888refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091220190816
487345182 0 023300 816 888refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091220190816
4914714412 0 032652 816 888fasterclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091220190816
5038614332 0 032556 816 888fasterclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091220190816
5038614332 0 032556 816 888fasterclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091220190816
5079924716 0 043599 936 880dolbeau/armv8cryptogcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091220190816
516258216 0 023630 912 856dolbeau/armv8cryptogcc_-funroll-loops_-Os_-fomit-frame-pointer2019091220190816
520388248 0 023614 912 856dolbeau/armv8cryptogcc_-Os_-fomit-frame-pointer2019091220190816
520388248 0 023614 912 856dolbeau/armv8cryptogcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091220190816
520388248 0 023614 912 856dolbeau/armv8cryptogcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091220190816
5245119984 0 036214 928 864dolbeau/armv8cryptogcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091220190816
5245123120 0 040663 936 880dolbeau/armv8cryptogcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091220190816
574074937 0 022671 936 880refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091220190816
615376289 0 024774 928 864refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091220190816
648415302 0 023492 816 888refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091220190816
6566720428 0 036814 928 864dolbeau/armv8cryptogcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091220190816
656675182 0 023348 816 888refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091220190816
6608020428 0 036814 928 864dolbeau/armv8cryptogcc_-O_-fomit-frame-pointer2019091220190816
6608025088 0 044694 928 864dolbeau/armv8cryptogcc_-funroll-loops_-O_-fomit-frame-pointer2019091220190816
6608025088 0 044694 928 864dolbeau/armv8cryptogcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091220190816
6608020428 0 036814 928 864dolbeau/armv8cryptogcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091220190816
660805182 0 023348 816 888refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091220190816
743405673 0 028759 936 880refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019091220190816
759924585 0 020942 928 864refgcc_-O2_-fomit-frame-pointer2019091220190816
797094865 0 022495 936 880refgcc_-O3_-fomit-frame-pointer2019091220190816
801224094 0 019511 920 856refgcc_-Os_-fomit-frame-pointer2019091220190816
801224094 0 019511 920 856refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091220190816
805354082 0 019559 920 856refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019091220190816
809484082 0 019559 920 856refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091220190816
842526241 0 024630 928 864refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019091220190816
896214937 0 022551 936 880refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091220190816
9705511252 0 027807 936 864fastergcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091220190816
9746811252 0 027807 936 864fastergcc_-O_-fomit-frame-pointer2019091220190816
974685373 0 021919 936 864refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091220190816
1028375745 0 024695 936 880refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091220190816
1189444633 0 021086 928 864refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091220190816
1218354094 0 019511 920 856refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091220190816
1255524633 0 020926 928 864refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091220190816
2056747621 0 027375 936 864refgcc_-funroll-loops_-O_-fomit-frame-pointer2019091220190816
2060877621 0 027375 936 864refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091220190816
2135215373 0 021919 936 864refgcc_-O_-fomit-frame-pointer2019091220190816
2135215373 0 021919 936 864refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091220190816
21558615544 0 038599 920 864fastergcc_-funroll-loops2019091220190816
6678219076 0 032095 920 864refgcc2019091220190816
6678219076 0 032095 920 864refgcc_-funroll-loops2019091220190816
68062440476 0 063511 920 864dolbeau/armv8cryptogcc_-funroll-loops2019091220190816
68186340476 0 063511 920 864dolbeau/armv8cryptogcc2019091220190816
94494440476 0 063511 920 864dolbeau/armv8cryptocc2019091220190816
11270779076 0 032095 920 864refcc2019091220190816

Test failure

Implementation: faster
Security model: unknown
Compiler: cc
error 111

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
cc faster
gcc faster
gcc -fno-schedule-insns -O -fomit-frame-pointer faster
gcc -funroll-loops -O -fomit-frame-pointer faster
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer faster

Test failure

Implementation: faster
Security model: unknown
Compiler: gcc -O2 -fomit-frame-pointer
error 111
crypto_aead_decrypt returns nonzero

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

Compiler output

Implementation: faster
Security model: unknown
Compiler: cc
hs1.c: hs1.c: In function 'hs1siv_decrypt':
hs1.c: hs1.c:1033:30: warning: implicit declaration of function 'malloc' [-Wimplicit-function-declaration]
hs1.c: unsigned char *tmp = malloc(abytes);
hs1.c: ^~~~~~
hs1.c: hs1.c:1033:30: warning: incompatible implicit declaration of built-in function 'malloc'
hs1.c: hs1.c:1033:30: note: include '<stdlib.h>' or provide a declaration of 'malloc'
hs1.c: hs1.c:31:1:
hs1.c: +#include <stdlib.h>
hs1.c: #endif
hs1.c: hs1.c:1033:30:
hs1.c: unsigned char *tmp = malloc(abytes);
hs1.c: ^~~~~~
hs1.c: hs1.c:1037:9: warning: implicit declaration of function 'free' [-Wimplicit-function-declaration]
hs1.c: free(tmp);
hs1.c: ^~~~
hs1.c: hs1.c:1037:9: warning: incompatible implicit declaration of built-in function 'free'
hs1.c: hs1.c:1037:9: note: include '<stdlib.h>' or provide a declaration of 'free'

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

Compiler output

Implementation: faster
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
hs1.c: hs1.c:1033:30: warning: implicitly declaring library function 'malloc' with type 'void *(unsigned long)' [-Wimplicit-function-declaration]
hs1.c: unsigned char *tmp = malloc(abytes);
hs1.c: ^
hs1.c: hs1.c:1033:30: note: include the header <stdlib.h> or explicitly provide a declaration for 'malloc'
hs1.c: hs1.c:1037:9: warning: implicit declaration of function 'free' is invalid in C99 [-Wimplicit-function-declaration]
hs1.c: free(tmp);
hs1.c: ^
hs1.c: 2 warnings generated.

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