Implementation notes: aarch64, supercoplxc, crypto_encrypt/r5n13pke0d

Computer: supercoplxc
Architecture: aarch64
CPU ID: 410fd034
SUPERCOP version: 20190816
Operation: crypto_encrypt
Primitive: r5n13pke0d
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
16803704030738 0 063085 1088 1592optgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019120320190816
16867680030146 0 062229 1088 1576avx2gcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019120320190816
16880608030146 0 062229 1088 1576optgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019120320190816
16897144025438 0 058789 1088 1592avx2gcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019120320190816
16913840030738 0 063085 1088 1592avx2gcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019120320190816
16944552025438 0 058789 1088 1592optgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019120320190816
16986384030674 0 062389 1088 1576avx2gcc_-funroll-loops_-O2_-fomit-frame-pointer2019120320190816
16997136031390 0 063365 1088 1592avx2gcc_-funroll-loops_-O3_-fomit-frame-pointer2019120320190816
17036560031390 0 063365 1088 1592optgcc_-funroll-loops_-O3_-fomit-frame-pointer2019120320190816
17052976023738 0 057428 976 1608avx2clang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019120320190816
17060336025698 0 058885 1088 1592optgcc_-O3_-fomit-frame-pointer2019120320190816
17090000024006 0 057604 976 1608optclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019120320190816
17090792023738 0 057428 976 1608optclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019120320190816
17091680023738 0 057428 976 1608optclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019120320190816
17096088024006 0 057604 976 1608avx2clang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019120320190816
17100064025698 0 058885 1088 1592avx2gcc_-O3_-fomit-frame-pointer2019120320190816
17101056023738 0 057428 976 1608avx2clang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019120320190816
17130304023738 0 057428 976 1608avx2clang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019120320190816
17133880023738 0 057380 976 1608avx2clang_-O3_-fomit-frame-pointer_-Qunused-arguments2019120320190816
17151304030674 0 062389 1088 1576optgcc_-funroll-loops_-O2_-fomit-frame-pointer2019120320190816
17243280023738 0 057428 976 1608optclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019120320190816
17298808023738 0 057380 976 1608optclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019120320190816
18721640019542 0 055293 1088 1576avx2gcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019120320190816
18746480019490 0 055381 1088 1576avx2gcc_-O2_-fomit-frame-pointer2019120320190816
18778912019542 0 055293 1088 1576optgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019120320190816
18790176017822 0 053779 1072 1568avx2gcc_-funroll-loops_-Os_-fomit-frame-pointer2019120320190816
18793216017822 0 053779 1072 1568optgcc_-funroll-loops_-Os_-fomit-frame-pointer2019120320190816
18833496017822 0 053779 1072 1568avx2gcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019120320190816
18835280019490 0 055381 1088 1576optgcc_-O2_-fomit-frame-pointer2019120320190816
18836360017822 0 053779 1072 1568optgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019120320190816
18867560017822 0 053747 1072 1568avx2gcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019120320190816
18925000017822 0 053747 1072 1568avx2gcc_-Os_-fomit-frame-pointer2019120320190816
18928648017822 0 053747 1072 1568optgcc_-Os_-fomit-frame-pointer2019120320190816
18972648017822 0 053747 1072 1568optgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019120320190816
20065424033350 0 065989 1088 1576avx2gcc_-funroll-loops_-O_-fomit-frame-pointer2019120320190816
20103440033350 0 065989 1088 1576optgcc_-funroll-loops_-O_-fomit-frame-pointer2019120320190816
20132560033350 0 065989 1088 1576avx2gcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019120320190816
20169808033350 0 065989 1088 1576optgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019120320190816
21939064020882 0 056509 1088 1576avx2gcc_-O_-fomit-frame-pointer2019120320190816
21950608020882 0 056509 1088 1576optgcc_-O_-fomit-frame-pointer2019120320190816
22008104020882 0 056509 1088 1576optgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019120320190816
22055744020882 0 056509 1088 1576avx2gcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019120320190816
107371968039031 0 069333 1072 1584optcc2019120320190816
107440424039031 0 069333 1072 1584optgcc2019120320190816
107956696039031 0 069333 1072 1584optgcc_-funroll-loops2019120320190816
111832672039031 0 069333 1072 1584avx2cc2019120320190816
112560360039031 0 069333 1072 1584avx2gcc2019120320190816
112609472039031 0 069333 1072 1584avx2gcc_-funroll-loops2019120320190816
1024682224029519 652 49671238 1736 2080refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019120320190816
1037381496030555 652 49672110 1736 2080refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019120320190816
1037832096030555 652 49672110 1736 2080refgcc_-O_-fomit-frame-pointer2019120320190816
1041188312029303 652 49671262 1736 2080refgcc_-O2_-fomit-frame-pointer2019120320190816
1056468840041015 652 49682022 1736 2080refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019120320190816
1059070184041535 652 49683910 1736 2080refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019120320190816
1059598168041535 652 49683910 1736 2080refgcc_-funroll-loops_-O_-fomit-frame-pointer2019120320190816
1062343376039501 652 49681518 1736 2096refgcc_-O3_-fomit-frame-pointer2019120320190816
1063868744040975 652 49682118 1736 2080refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019120320190816
1071039488039445 652 49681374 1736 2096refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019120320190816
1073416080031085 648 50073749 1592 2112refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019120320190816
1075398984031085 648 50073749 1592 2112refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019120320190816
1076178208031085 648 50073749 1592 2112refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019120320190816
1076897064054561 652 49695950 1736 2096refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019120320190816
1083280640026632 652 49671167 1776 2072refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019120320190816
1083552632026596 652 49671183 1776 2072refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019120320190816
1087952384031009 648 50073621 1592 2112refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019120320190816
1091431264026632 652 49671167 1776 2072refgcc_-Os_-fomit-frame-pointer2019120320190816
1101500664026596 652 49671183 1776 2072refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019120320190816
1107560280031501 648 50074085 1592 2112refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019120320190816
1108652040054817 652 49696110 1736 2096refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019120320190816

Test failure

Implementation: ref
Security model: unknown
Compiler: cc
error 142
Alarm clock

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
cc ref
gcc ref
gcc -funroll-loops ref

Compiler output

Implementation: avx2
Security model: unknown
Compiler: cc
a_fixed.c: In file included from a_fixed.h:13,
a_fixed.c: from a_fixed.c:10:
a_fixed.c: r5_parameter_sets.h:143:2: warning: #warning AVX2 not supported by platform [-Wcpp]
a_fixed.c: #warning AVX2 not supported by platform
a_fixed.c: ^~~~~~~
a_random.c: In file included from a_random.h:13,
a_random.c: from a_random.c:10:
a_random.c: r5_parameter_sets.h:143:2: warning: #warning AVX2 not supported by platform [-Wcpp]
a_random.c: #warning AVX2 not supported by platform
a_random.c: ^~~~~~~
cca_encrypt.c: In file included from cca_encrypt.h:14,
cca_encrypt.c: from cca_encrypt.c:12:
cca_encrypt.c: r5_parameter_sets.h:143:2: warning: #warning AVX2 not supported by platform [-Wcpp]
cca_encrypt.c: #warning AVX2 not supported by platform
cca_encrypt.c: ^~~~~~~
cpa_kem.c: In file included from cpa_kem.h:13,
cpa_kem.c: from cpa_kem.c:11:
cpa_kem.c: r5_parameter_sets.h:143:2: warning: #warning AVX2 not supported by platform [-Wcpp]
cpa_kem.c: #warning AVX2 not supported by platform
cpa_kem.c: ^~~~~~~
drbg.c: In file included from drbg.h:13,
drbg.c: from drbg.c:18:
drbg.c: r5_parameter_sets.h:143:2: warning: #warning AVX2 not supported by platform [-Wcpp]
drbg.c: #warning AVX2 not supported by platform
drbg.c: ^~~~~~~
matmul.c: In file included from matmul.h:8,
matmul.c: from matmul.c:8:
matmul.c: r5_parameter_sets.h:143:2: warning: #warning AVX2 not supported by platform [-Wcpp]
matmul.c: #warning AVX2 not supported by platform
matmul.c: ^~~~~~~
matmul_avx2.c: In file included from matmul.h:8,
matmul_avx2.c: from matmul_avx2.c:8:
matmul_avx2.c: r5_parameter_sets.h:143:2: warning: #warning AVX2 not supported by platform [-Wcpp]
matmul_avx2.c: #warning AVX2 not supported by platform
matmul_avx2.c: ^~~~~~~
matmul_cm.c: In file included from matmul.h:8,
matmul_cm.c: from matmul_cm.c:7:
matmul_cm.c: r5_parameter_sets.h:143:2: warning: #warning AVX2 not supported by platform [-Wcpp]
matmul_cm.c: #warning AVX2 not supported by platform
matmul_cm.c: ^~~~~~~
probe_cm.c: In file included from probe_cm.c:6:
probe_cm.c: r5_parameter_sets.h:143:2: warning: #warning AVX2 not supported by platform [-Wcpp]
probe_cm.c: #warning AVX2 not supported by platform
probe_cm.c: ^~~~~~~
r5_cca_kem.c: In file included from r5_cca_kem.c:7:
r5_cca_kem.c: r5_parameter_sets.h:143:2: warning: #warning AVX2 not supported by platform [-Wcpp]
r5_cca_kem.c: #warning AVX2 not supported by platform
r5_cca_kem.c: ^~~~~~~
r5_cca_pke.c: In file included from r5_cca_pke.c:12:
r5_cca_pke.c: r5_parameter_sets.h:143:2: warning: #warning AVX2 not supported by platform [-Wcpp]
r5_cca_pke.c: #warning AVX2 not supported by platform
r5_cca_pke.c: ^~~~~~~
r5_cpa_kem.c: In file included from r5_cpa_kem.c:9:
r5_cpa_kem.c: r5_parameter_sets.h:143:2: warning: #warning AVX2 not supported by platform [-Wcpp]
r5_cpa_kem.c: #warning AVX2 not supported by platform
r5_cpa_kem.c: ^~~~~~~
r5_cpa_pke_n1.c: In file included from r5_cpa_pke_n1.c:6:
r5_cpa_pke_n1.c: r5_parameter_sets.h:143:2: warning: #warning AVX2 not supported by platform [-Wcpp]
r5_cpa_pke_n1.c: #warning AVX2 not supported by platform
r5_cpa_pke_n1.c: ^~~~~~~
r5_cpa_pke_nd.c: In file included from r5_cpa_pke_nd.c:7:
r5_cpa_pke_nd.c: r5_parameter_sets.h:143:2: warning: #warning AVX2 not supported by platform [-Wcpp]
r5_cpa_pke_nd.c: #warning AVX2 not supported by platform
r5_cpa_pke_nd.c: ^~~~~~~
r5_dem.c: In file included from r5_dem.c:11:
r5_dem.c: r5_parameter_sets.h:143:2: warning: #warning AVX2 not supported by platform [-Wcpp]
r5_dem.c: #warning AVX2 not supported by platform
r5_dem.c: ^~~~~~~
ringmul.c: In file included from ringmul.h:9,
ringmul.c: from ringmul.c:8:
ringmul.c: r5_parameter_sets.h:143:2: warning: #warning AVX2 not supported by platform [-Wcpp]
ringmul.c: #warning AVX2 not supported by platform
ringmul.c: ^~~~~~~
ringmul_cm.c: In file included from ringmul.h:9,
ringmul_cm.c: from ringmul_cm.c:8:
ringmul_cm.c: r5_parameter_sets.h:143:2: warning: #warning AVX2 not supported by platform [-Wcpp]
ringmul_cm.c: #warning AVX2 not supported by platform
ringmul_cm.c: ^~~~~~~

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

Compiler output

Implementation: avx2
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
a_fixed.c: In file included from a_fixed.c:10:
a_fixed.c: In file included from ./a_fixed.h:13:
a_fixed.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
a_fixed.c: #warning AVX2 not supported by platform
a_fixed.c: ^
a_fixed.c: 1 warning generated.
a_random.c: In file included from a_random.c:10:
a_random.c: In file included from ./a_random.h:13:
a_random.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
a_random.c: #warning AVX2 not supported by platform
a_random.c: ^
a_random.c: 1 warning generated.
cca_encrypt.c: In file included from cca_encrypt.c:12:
cca_encrypt.c: In file included from ./cca_encrypt.h:14:
cca_encrypt.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
cca_encrypt.c: #warning AVX2 not supported by platform
cca_encrypt.c: ^
cca_encrypt.c: 1 warning generated.
cpa_kem.c: In file included from cpa_kem.c:11:
cpa_kem.c: In file included from ./cpa_kem.h:13:
cpa_kem.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
cpa_kem.c: #warning AVX2 not supported by platform
cpa_kem.c: ^
cpa_kem.c: 1 warning generated.
drbg.c: In file included from drbg.c:18:
drbg.c: In file included from ./drbg.h:13:
drbg.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
drbg.c: #warning AVX2 not supported by platform
drbg.c: ^
drbg.c: 1 warning generated.
matmul.c: In file included from matmul.c:8:
matmul.c: In file included from ./matmul.h:8:
matmul.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
matmul.c: #warning AVX2 not supported by platform
matmul.c: ^
matmul.c: 1 warning generated.
matmul_avx2.c: In file included from matmul_avx2.c:8:
matmul_avx2.c: In file included from ./matmul.h:8:
matmul_avx2.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
matmul_avx2.c: #warning AVX2 not supported by platform
matmul_avx2.c: ^
matmul_avx2.c: 1 warning generated.
matmul_cm.c: In file included from matmul_cm.c:7:
matmul_cm.c: In file included from ./matmul.h:8:
matmul_cm.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
matmul_cm.c: #warning AVX2 not supported by platform
matmul_cm.c: ^
matmul_cm.c: 1 warning generated.
probe_cm.c: In file included from probe_cm.c:6:
probe_cm.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
probe_cm.c: #warning AVX2 not supported by platform
probe_cm.c: ^
probe_cm.c: 1 warning generated.
r5_cca_kem.c: In file included from r5_cca_kem.c:7:
r5_cca_kem.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
r5_cca_kem.c: #warning AVX2 not supported by platform
r5_cca_kem.c: ^
r5_cca_kem.c: 1 warning generated.
r5_cca_pke.c: In file included from r5_cca_pke.c:12:
r5_cca_pke.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
r5_cca_pke.c: #warning AVX2 not supported by platform
r5_cca_pke.c: ^
r5_cca_pke.c: 1 warning generated.
r5_cpa_kem.c: In file included from r5_cpa_kem.c:9:
r5_cpa_kem.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
r5_cpa_kem.c: #warning AVX2 not supported by platform
r5_cpa_kem.c: ^
r5_cpa_kem.c: 1 warning generated.
r5_cpa_pke_n1.c: In file included from r5_cpa_pke_n1.c:6:
r5_cpa_pke_n1.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
r5_cpa_pke_n1.c: #warning AVX2 not supported by platform
r5_cpa_pke_n1.c: ^
r5_cpa_pke_n1.c: 1 warning generated.
r5_cpa_pke_nd.c: In file included from r5_cpa_pke_nd.c:7:
r5_cpa_pke_nd.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
r5_cpa_pke_nd.c: #warning AVX2 not supported by platform
r5_cpa_pke_nd.c: ^
r5_cpa_pke_nd.c: 1 warning generated.
r5_dem.c: In file included from r5_dem.c:11:
r5_dem.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
r5_dem.c: #warning AVX2 not supported by platform
r5_dem.c: ^
r5_dem.c: 1 warning generated.
ringmul.c: In file included from ringmul.c:8:
ringmul.c: In file included from ./ringmul.h:9:
ringmul.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
ringmul.c: #warning AVX2 not supported by platform
ringmul.c: ^
ringmul.c: 1 warning generated.
ringmul_cm.c: In file included from ringmul_cm.c:8:
ringmul_cm.c: In file included from ./ringmul.h:9:
ringmul_cm.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
ringmul_cm.c: #warning AVX2 not supported by platform
ringmul_cm.c: ^
ringmul_cm.c: 1 warning generated.

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