Test results for aarch64, pi5, crypto_aead/aes128gcmv1
[Page version: 20251031 23:15:16]
Measurements for aarch64, pi5, crypto_aead
Test results for aarch64, pi5, crypto_aead
Test results for crypto_aead/aes128gcmv1
Computer: pi5
Microarchitecture: aarch64; Cortex-A76 (414fd0b1)
Architecture: aarch64
CPU ID: 414fd0b1
SUPERCOP version: 20250922
Operation: crypto_aead
Primitive: aes128gcmv1
| Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
| 11380 | 16276 0 0 | 37572 880 872 | T:dolbeau/armv8crypto | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251018 | 20250922 |
| 11380 | 8048 0 0 | 26879 824 880 | T:dolbeau/armv8crypto | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251018 | 20250922 |
| 11380 | 14752 0 0 | 34423 824 880 | T:dolbeau/armv8crypto | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251018 | 20250922 |
| 17070 | 6192 0 0 | 25038 816 864 | T:dolbeau/armv8crypto | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251018 | 20250922 |
| 17070 | 5536 0 0 | 23103 808 856 | T:dolbeau/armv8crypto | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251018 | 20250922 |
| 17070 | 840 0 0 | 23163 960 872 | T:opensslnew | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251018 | 20250922 |
| 17070 | 948 0 0 | 20605 920 880 | T:opensslnew | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251018 | 20250922 |
| 17070 | 948 0 0 | 21477 920 880 | T:opensslnew | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251018 | 20250922 |
| 17070 | 1052 0 0 | 20740 912 864 | T:opensslnew | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251018 | 20250922 |
| 17070 | 856 0 0 | 19293 904 856 | T:opensslnew | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251018 | 20250922 |
| 2742580 | 2468 0 16 | 24246 896 888 | T:ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251018 | 20250922 |
| 2765340 | 1868 0 16 | 21144 856 904 | T:ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251018 | 20250922 |
| 3146570 | 3464 0 16 | 23616 856 904 | T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251018 | 20250922 |
| 27772890 | 1992 0 16 | 21287 848 880 | T:ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251018 | 20250922 |
| 31869690 | 1736 0 16 | 19776 840 872 | T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251018 | 20250922 |
Compiler output
armv8crypto.c: armv8crypto.c:245:9: warning: 'vext_p8' macro redefined [-Wmacro-redefined]
armv8crypto.c: #define vext_p8(a,b,c) vreinterpret_p8_u8(vext_u8(vreinterpret_u8_p8(a),vreinterpret_u8_p8(b),c))
armv8crypto.c: ^
armv8crypto.c: /usr/lib/llvm-14/lib/clang/14.0.6/include/arm_neon.h:6910:9: note: previous definition is here
armv8crypto.c: #define vext_p8(__p0, __p1, __p2) __extension__ ({ \
armv8crypto.c: ^
armv8crypto.c: armv8crypto.c:246:9: warning: 'vextq_p16' macro redefined [-Wmacro-redefined]
armv8crypto.c: #define vextq_p16(a,b,c) vreinterpretq_p16_u16(vextq_u16(vreinterpretq_u16_p16(a),vreinterpretq_u16_p16(b),c))
armv8crypto.c: ^
armv8crypto.c: /usr/lib/llvm-14/lib/clang/14.0.6/include/arm_neon.h:6973:9: note: previous definition is here
armv8crypto.c: #define vextq_p16(__p0, __p1, __p2) __extension__ ({ \
armv8crypto.c: ^
armv8crypto.c: armv8crypto.c:331:16: warning: unused variable 'ff' [-Wunused-variable]
armv8crypto.c: poly8x16_t ff = vdupq_n_p8((poly8_t)0xFF);
armv8crypto.c: ^
armv8crypto.c: armv8crypto.c:321:17: warning: unused variable 'x2' [-Wunused-variable]
armv8crypto.c: unsigned char x2[16];
armv8crypto.c: ^
armv8crypto.c: armv8crypto.c:319:7: warning: unused variable 'i' [-Wunused-variable]
armv8crypto.c: int i;
armv8crypto.c: ^
armv8crypto.c: armv8crypto.c:320:17: warning: unused variable 'y2' [-Wunused-variable]
armv8crypto.c: unsigned char y2[16];
armv8crypto.c: ^
armv8crypto.c: armv8crypto.c:408:29: warning: unused variable 'tmphi' [-Wunused-variable]
armv8crypto.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
| Implementation | Compiler |
| T:dolbeau/armv8crypto | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6) |
Compiler output
armv8crypto.c: armv8crypto.c: In function 'aes_armv8_encrypt1':
armv8crypto.c: armv8crypto.c:62: warning: ignoring '#pragma unroll ' [-Wunknown-pragmas]
armv8crypto.c: 62 | #pragma unroll(9)
armv8crypto.c: |
armv8crypto.c: armv8crypto.c: In function 'addmul':
armv8crypto.c: armv8crypto.c:330:64: warning: suggest parentheses around arithmetic in operand of '^' [-Wparentheses]
armv8crypto.c: 330 | unsigned long long mask = -1ull ^ (1ull<<(((16-xlen)%8)*8))-1ull;
armv8crypto.c: | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
armv8crypto.c: armv8crypto.c:331:16: warning: unused variable 'ff' [-Wunused-variable]
armv8crypto.c: 331 | poly8x16_t ff = vdupq_n_p8((poly8_t)0xFF);
armv8crypto.c: | ^~
armv8crypto.c: armv8crypto.c:321:17: warning: unused variable 'x2' [-Wunused-variable]
armv8crypto.c: 321 | unsigned char x2[16];
armv8crypto.c: | ^~
armv8crypto.c: armv8crypto.c:320:17: warning: unused variable 'y2' [-Wunused-variable]
armv8crypto.c: 320 | unsigned char y2[16];
armv8crypto.c: | ^~
armv8crypto.c: armv8crypto.c:319:7: warning: unused variable 'i' [-Wunused-variable]
armv8crypto.c: 319 | int i;
armv8crypto.c: | ^
armv8crypto.c: armv8crypto.c: In function 'reduce4':
armv8crypto.c: armv8crypto.c:408:29: warning: unused variable 'tmphi' [-Wunused-variable]
armv8crypto.c: 408 | uint32x4_t lo, tmplo, hi, tmphi;
armv8crypto.c: | ^~~~~
armv8crypto.c: armv8crypto.c:408:18: warning: unused variable 'tmplo' [-Wunused-variable]
armv8crypto.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
| Implementation | Compiler |
| T:dolbeau/armv8crypto | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0) |
| T:dolbeau/armv8crypto | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0) |
| T:dolbeau/armv8crypto | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0) |
| T:dolbeau/armv8crypto | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0) |
Compiler output
decrypt.c: decrypt.c:13:18: error: variable has incomplete type 'EVP_CIPHER_CTX' (aka 'struct evp_cipher_ctx_st')
decrypt.c: EVP_CIPHER_CTX x;
decrypt.c: ^
decrypt.c: /usr/include/openssl/types.h:102:16: note: forward declaration of 'struct evp_cipher_ctx_st'
decrypt.c: typedef struct evp_cipher_ctx_st EVP_CIPHER_CTX;
decrypt.c: ^
decrypt.c: 1 error generated.
Number of similar (implementation,compiler) pairs: 1, namely:
| Implementation | Compiler |
| T:openssl | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6) |
Compiler output
decrypt.c: decrypt.c: In function 'crypto_aead_aes128gcmv1_openssl_timingleaks_decrypt':
decrypt.c: decrypt.c:13:18: error: storage size of 'x' isn't known
decrypt.c: 13 | EVP_CIPHER_CTX x;
decrypt.c: | ^
decrypt.c: decrypt.c:13:18: warning: unused variable 'x' [-Wunused-variable]
Number of similar (implementation,compiler) pairs: 4, namely:
| Implementation | Compiler |
| T:openssl | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0) |
| T:openssl | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0) |
| T:openssl | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0) |
| T:openssl | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0) |
Compiler output
try.c: env: 'cargo': No such file or directory
Number of similar (implementation,compiler) pairs: 10, namely:
| Implementation | Compiler |
| rust_aes_gcm | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6) |
| rust_aes_gcm | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0) |
| rust_aes_gcm | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0) |
| rust_aes_gcm | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0) |
| rust_aes_gcm | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0) |
| T:rust_crypto | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6) |
| T:rust_crypto | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0) |
| T:rust_crypto | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0) |
| T:rust_crypto | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0) |
| T:rust_crypto | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0) |
Namespace violations
armv8crypto.o addmul T
armv8crypto.o mulv T
Number of similar (implementation,compiler) pairs: 5, namely:
| Implementation | Compiler |
| T:dolbeau/armv8crypto | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6) |
| T:dolbeau/armv8crypto | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0) |
| T:dolbeau/armv8crypto | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0) |
| T:dolbeau/armv8crypto | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0) |
| T:dolbeau/armv8crypto | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0) |