Implementation notes: aarch64, supercoplxc, crypto_kem/limasp1822cca

Computer: supercoplxc
Architecture: aarch64
CPU ID: 410fd034
SUPERCOP version: 20190816
Operation: crypto_kem
Primitive: limasp1822cca
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2183024036864 1484 26083672 2440 593200optgcc_-funroll-loops_-O3_-fomit-frame-pointer2019112420190816
2229656018440 1484 26062680 2440 593176optgcc_-O2_-fomit-frame-pointer2019112420190816
2233144021716 1484 26067176 2440 593200optgcc_-O3_-fomit-frame-pointer2019112420190816
2239792036536 1484 26083304 2440 593200optgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112420190816
2246768036580 1484 26082880 2440 593176optgcc_-funroll-loops_-O2_-fomit-frame-pointer2019112420190816
2280928021744 1484 26067168 2440 593200optgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112420190816
2284160036320 1484 26082704 2440 593176optgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112420190816
2284992018412 1484 26062592 2440 593176optgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112420190816
2455168016572 1484 26060840 2440 593176optgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019112420190816
2457280016572 1484 26060840 2440 593176optgcc_-O_-fomit-frame-pointer2019112420190816
2492480030032 1484 26077520 2440 593176optgcc_-funroll-loops_-O_-fomit-frame-pointer2019112420190816
2508720030032 1484 26077520 2440 593176optgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019112420190816
2612152017120 1464 26062903 2280 593200optclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019112420190816
2722408016960 1464 26062727 2280 593200optclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019112420190816
2723960017108 1464 26062823 2280 593200optclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019112420190816
2724696016960 1464 26062727 2280 593200optclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019112420190816
2730352016960 1464 26062727 2280 593200optclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019112420190816
2814304014150 1464 26057558 2400 593168optgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112420190816
2814360014150 1464 26057558 2400 593168optgcc_-funroll-loops_-Os_-fomit-frame-pointer2019112420190816
2918968014154 1464 26057510 2400 593168optgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112420190816
2919832014154 1464 26057510 2400 593168optgcc_-Os_-fomit-frame-pointer2019112420190816
6028864015004 384 460775 1200 592944refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019112420190816
6031200015004 384 460775 1200 592944refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019112420190816
6033608015004 384 460775 1200 592944refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019112420190816
6036776015072 384 460791 1200 592944refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019112420190816
6069432015152 384 460951 1200 592944refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019112420190816
6266904034040 384 480792 1336 592936refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019112420190816
6398656033508 384 480224 1336 592936refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112420190816
7053272033064 384 479304 1336 592920refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019112420190816
7062208020284 384 465664 1336 592936refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112420190816
7075920020304 384 465704 1336 592936refgcc_-O3_-fomit-frame-pointer2019112420190816
7407984032712 384 479048 1336 592920refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112420190816
11687424023560 1484 26470792 2432 593184optgcc_-funroll-loops2019112420190816
11725512023560 1484 26470792 2432 593184optcc2019112420190816
11788456023560 1484 26470792 2432 593184optgcc2019112420190816
13646584013174 384 456534 1320 592912refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019112420190816
13650952013182 384 456486 1320 592912refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112420190816
13668976013182 384 456486 1320 592912refgcc_-Os_-fomit-frame-pointer2019112420190816
13696336013174 384 456534 1320 592912refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112420190816
13934312017008 384 461192 1336 592920refgcc_-O2_-fomit-frame-pointer2019112420190816
14012304016964 384 461080 1336 592920refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112420190816
14367568029516 384 476952 1336 592920refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019112420190816
14496512029516 384 476952 1336 592920refgcc_-funroll-loops_-O_-fomit-frame-pointer2019112420190816
15929736015784 384 460000 1336 592920refgcc_-O_-fomit-frame-pointer2019112420190816
15964928015784 384 460000 1336 592920refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019112420190816
45692920020724 384 467888 1328 592920refcc2019112420190816
46014400020724 384 467888 1328 592920refgcc_-funroll-loops2019112420190816
46989128020724 384 467888 1328 592920refgcc2019112420190816

Compiler output

Implementation: opt
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
lima.c: lima.c:147:20: warning: using floating point absolute value function 'fabs' when argument is of integer type [-Wabsolute-value]
lima.c: rhs=11*sqrt(fabs(2*N))*3.16; // Accepting condition for LIMA_2p
lima.c: ^
lima.c: lima.c:147:20: note: use function 'abs' instead
lima.c: rhs=11*sqrt(fabs(2*N))*3.16; // Accepting condition for LIMA_2p
lima.c: ^~~~
lima.c: abs
lima.c: lima.c:155:20: warning: using floating point absolute value function 'fabs' when argument is of integer type [-Wabsolute-value]
lima.c: rhs=11*sqrt(fabs(4*N))*3.16; // Accepting condition for LIMA_sp
lima.c: ^
lima.c: lima.c:155:20: note: use function 'abs' instead
lima.c: rhs=11*sqrt(fabs(4*N))*3.16; // Accepting condition for LIMA_sp
lima.c: ^~~~
lima.c: abs
lima.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: ref
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
lima.c: lima.c:91:20: warning: using floating point absolute value function 'fabs' when argument is of integer type [-Wabsolute-value]
lima.c: rhs=11*sqrt(fabs(2*N))*3.16; // Accepting condition for LIMA_2p
lima.c: ^
lima.c: lima.c:91:20: note: use function 'abs' instead
lima.c: rhs=11*sqrt(fabs(2*N))*3.16; // Accepting condition for LIMA_2p
lima.c: ^~~~
lima.c: abs
lima.c: lima.c:91:20: note: include the header <stdlib.h> or explicitly provide a declaration for 'abs'
lima.c: lima.c:95:20: warning: using floating point absolute value function 'fabs' when argument is of integer type [-Wabsolute-value]
lima.c: { rhs=11*sqrt(fabs(4*N))*3.16; // Accepting condition for LIMA_sp
lima.c: ^
lima.c: lima.c:95:20: note: use function 'abs' instead
lima.c: { rhs=11*sqrt(fabs(4*N))*3.16; // Accepting condition for LIMA_sp
lima.c: ^~~~
lima.c: abs
lima.c: lima.c:95:20: note: include the header <stdlib.h> or explicitly provide a declaration for 'abs'
lima.c: 2 warnings generated.

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