Implementation notes: aarch64, rockpi4, crypto_hash/nasha256

Computer: rockpi4
Architecture: aarch64
CPU ID: unknown CPU ID
SUPERCOP version: 20190816
Operation: crypto_hash
Primitive: nasha256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2106325400 0 436510 896 131816opt_v4gcc_-O2_-fomit-frame-pointer2019091120190816
2106325496 0 436718 896 131816opt_v4gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091120190816
2147634156 0 447943 904 131832opt_v4gcc_-funroll-loops_-O3_-fomit-frame-pointer2019091120190816
2312839424 0 450708 800 131848opt_v4clang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091120190816
2312839424 0 450756 800 131848opt_v4clang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091120190816
2354130112 0 442527 904 131832opt_v4gcc_-O3_-fomit-frame-pointer2019091120190816
2354125540 0 435942 880 131808opt_v4gcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091120190816
2354130288 0 442815 904 131832opt_v4gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091120190816
2395425556 0 435894 880 131808opt_v4gcc_-Os_-fomit-frame-pointer2019091120190816
2395425556 0 435894 880 131808opt_v4gcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091120190816
2436727000 0 440182 896 131816opt_v4gcc_-funroll-loops_-O2_-fomit-frame-pointer2019091120190816
2478012600 0 024999 896 760optgcc_-O3_-fomit-frame-pointer2019091120190816
247807096 0 017478 872 736optgcc_-funroll-loops_-Os_-fomit-frame-pointer2019091120190816
247807592 0 018782 888 744optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019091120190816
2519312784 0 025287 896 760optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019091120190816
2601916104 0 029847 896 760optgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091120190816
2684510020 0 024398 888 744optgcc_-funroll-loops_-O_-fomit-frame-pointer2019091120190816
2684539428 0 450772 800 131848opt_v4clang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091120190816
2684525928 0 439206 896 131816opt_v4gcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091120190816
2684533136 0 446895 904 131832opt_v4gcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091120190816
2767112536 0 024911 896 760optgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091120190816
2767125540 0 435942 880 131808opt_v4gcc_-funroll-loops_-Os_-fomit-frame-pointer2019091120190816
2808439424 0 450756 800 131848opt_v4clang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091120190816
2808439424 0 450756 800 131848opt_v4clang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091120190816
289107992 0 019158 888 744optgcc_-O_-fomit-frame-pointer2019091120190816
2891024264 0 435310 896 131816opt_v4gcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091120190816
2891029020 0 441415 904 131832opt_v4gcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019091120190816
293239408 0 022574 888 744optgcc_-funroll-loops_-O2_-fomit-frame-pointer2019091120190816
3014927424 0 438606 896 131816opt_v4gcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091120190816
3014929208 0 443606 896 131816opt_v4gcc_-funroll-loops_-O_-fomit-frame-pointer2019091120190816
3014929208 0 443606 896 131816opt_v4gcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091120190816
3014927424 0 438606 896 131816opt_v4gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091120190816
3097516200 0 029975 896 760optgcc_-funroll-loops_-O3_-fomit-frame-pointer2019091120190816
318019752 0 023076 800 768optclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019091120190816
318019764 0 023140 800 768optclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019091120190816
322147504 0 018590 888 744optgcc_-O2_-fomit-frame-pointer2019091120190816
326279256 0 022510 888 744optgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091120190816
330407096 0 017478 872 736optgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091120190816
3386625556 0 435894 880 131808opt_v4gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091120190816
355187116 0 017430 872 736optgcc_-Os_-fomit-frame-pointer2019091120190816
355187116 0 017430 872 736optgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019091120190816
355187116 0 017430 872 736optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019091120190816
371707392 0 018422 888 744optgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019091120190816
388229764 0 023140 800 768optclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019091120190816
388229764 0 023140 800 768optclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019091120190816
3923510064 0 023444 800 768optclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019091120190816
4790827424 0 438606 896 131816opt_v4gcc_-O_-fomit-frame-pointer2019091120190816
5203810020 0 024398 888 744optgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019091120190816
586467992 0 019158 888 744optgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019091120190816
586467992 0 019158 888 744optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019091120190816
7392755164 0 468494 880 131824opt_v4cc2019091120190816
7475355164 0 468494 880 131824opt_v4gcc2019091120190816
7475355164 0 468494 880 131824opt_v4gcc_-funroll-loops2019091120190816
9581611716 0 025030 872 744optcc2019091120190816
17139511716 0 025030 872 744optgcc2019091120190816
17139511716 0 025030 872 744optgcc_-funroll-loops2019091120190816

Compiler output

Implementation: opt
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
Nasha.c: Nasha.c:627:1: warning: control may reach end of non-void function [-Wreturn-type]
Nasha.c: }
Nasha.c: ^
Nasha.c: Nasha.c:646:1: warning: control may reach end of non-void function [-Wreturn-type]
Nasha.c: }
Nasha.c: ^
Nasha.c: 2 warnings generated.

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

Compiler output

Implementation: opt_v4
Security model: unknown
Compiler: cc
Nasha.c: Nasha.c: In function 'Init':
Nasha.c: Nasha.c:815:29: warning: assignment to 'uint_16t' {aka 'short unsigned int'} from 'uint_16t *' {aka 'short unsigned int *'} makes integer from pointer without a cast [-Wint-conversion]
Nasha.c: ssbox[i][j] = ssbox[i^j];
Nasha.c: ^

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

Compiler output

Implementation: opt_v4
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
Nasha.c: Nasha.c:815:29: warning: incompatible pointer to integer conversion assigning to 'uint_16t' (aka 'unsigned short') from 'uint_16t [256]' [-Wint-conversion]
Nasha.c: ssbox[i][j] = ssbox[i^j];
Nasha.c: ^ ~~~~~~~~~~
Nasha.c: Nasha.c:854:1: warning: control may reach end of non-void function [-Wreturn-type]
Nasha.c: }
Nasha.c: ^
Nasha.c: Nasha.c:873:1: warning: control may reach end of non-void function [-Wreturn-type]
Nasha.c: }
Nasha.c: ^
Nasha.c: 3 warnings generated.

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