Implementation notes: amd64, h8atom, crypto_core/aes128encrypt
Computer: h8atom
Microarchitecture: amd64; Bonnell (30661)
Architecture: amd64
CPU ID: GenuineIntel-00030661-bfebfbff
SUPERCOP version: 20240716
Operation: crypto_core
Primitive: aes128encrypt
Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
903 | 6202 0 0 | 16814 808 760 | T:dolbeau/std-4ft | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
931 | 6158 0 0 | 18532 816 760 | T:dolbeau/std-4ft | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
987 | 7039 0 0 | 20588 816 760 | T:dolbeau/std-4ft | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
994 | 3135 0 0 | 15508 816 760 | T:dolbeau/std-1ft | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1001 | 3892 0 0 | 17436 816 760 | T:dolbeau/std-1ft | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1008 | 3153 0 0 | 13774 808 760 | T:dolbeau/std-1ft | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1022 | 6143 0 0 | 17524 816 760 | T:dolbeau/std-4ft | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1050 | 4187 0 0 | 16564 816 760 | T:dolbeau/std-2ft | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1050 | 4885 0 0 | 18428 816 760 | T:dolbeau/std-2ft | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1078 | 4174 0 0 | 14782 808 760 | T:dolbeau/std-2ft | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1099 | 4180 0 0 | 15556 816 760 | T:dolbeau/std-2ft | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1106 | 6310 0 0 | 18622 776 832 | T:dolbeau/std-4ft | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1148 | 3128 0 0 | 14500 816 760 | T:dolbeau/std-1ft | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1183 | 6315 0 0 | 17201 752 800 | T:dolbeau/std-4ft | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1232 | 7022 0 0 | 20556 816 760 | T:dolbeau/std-4ft | clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1232 | 7430 0 0 | 21054 776 832 | T:dolbeau/std-4ft | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1288 | 6359 0 0 | 18381 768 832 | T:dolbeau/std-4ft | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1316 | 4862 0 0 | 18396 816 760 | T:dolbeau/std-2ft | clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1330 | 3844 0 0 | 17372 816 760 | T:dolbeau/std-1ft | clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1442 | 140 0 0 | 13838 832 760 | T:openssl | clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1449 | 142 0 0 | 11686 832 760 | T:openssl | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1456 | 142 0 0 | 12678 832 760 | T:openssl | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1463 | 225 0 0 | 14119 808 800 | T:openssl | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1470 | 142 0 0 | 13854 832 760 | T:openssl | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1470 | 142 0 0 | 10912 824 760 | T:openssl | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1470 | 225 0 0 | 12775 808 800 | T:openssl | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1477 | 227 0 0 | 11306 784 800 | T:openssl | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1491 | 226 0 0 | 12454 800 800 | T:openssl | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
448770 | 3517 0 0 | 17174 776 832 | ref | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
525644 | 2619 0 0 | 14964 816 760 | ref | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
537159 | 3841 0 0 | 17364 816 760 | ref | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
691425 | 3841 0 0 | 17332 816 760 | ref | clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1196699 | 1861 0 0 | 12438 808 760 | ref | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1578325 | 1692 0 0 | 13044 816 760 | ref | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1819965 | 1926 0 0 | 14230 776 832 | ref | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
1914850 | 1641 0 0 | 12473 752 800 | ref | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
2297960 | 1886 0 0 | 13885 768 832 | ref | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240626 | 20240625 |
Compiler output
core.c: core.c:13:25: warning: unused variable 'temp2' [-Wunused-variable]
core.c: __m128i temp0, temp1, temp2, temp4;
core.c: ^
core.c: core.c:29:3: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
core.c: BLOCK1(0x01);
core.c: ^
core.c: core.c:20:11: note: expanded from macro 'BLOCK1'
core.c: temp1 = _mm_aeskeygenassist_si128(temp0, IMM); \
core.c: ^
core.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/__wmmintrin_aes.h:136:13: note: expanded from macro '_mm_aeskeygenassist_si128'
core.c: ((__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R)))
core.c: ^
core.c: core.c:30:3: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
core.c: BLOCK1(0x02);
core.c: ^
core.c: core.c:20:11: note: expanded from macro 'BLOCK1'
core.c: temp1 = _mm_aeskeygenassist_si128(temp0, IMM); \
core.c: ^
core.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/__wmmintrin_aes.h:136:13: note: expanded from macro '_mm_aeskeygenassist_si128'
core.c: ((__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R)))
core.c: ^
core.c: core.c:31:3: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
core.c: BLOCK1(0x04);
core.c: ^
core.c: core.c:20:11: note: expanded from macro 'BLOCK1'
core.c: ...
Number of similar (implementation,compiler) pairs: 5, namely:
Implementation | Compiler |
dolbeau/aesenc-int | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
dolbeau/aesenc-int | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
dolbeau/aesenc-int | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
dolbeau/aesenc-int | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
dolbeau/aesenc-int | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
core.c: core.c: In function 'aes128ni_setkey_encrypt':
core.c: core.c:13:25: warning: unused variable 'temp2' [-Wunused-variable]
core.c: 13 | __m128i temp0, temp1, temp2, temp4;
core.c: | ^~~~~
core.c: core.c: In function 'aes128ni_encrypt':
core.c: core.c:46: warning: ignoring '#pragma unroll ' [-Wunknown-pragmas]
core.c: 46 | #pragma unroll(9)
core.c: |
core.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:41,
core.c: from core.c:9:
core.c: core.c: In function 'aes128ni_setkey_encrypt':
core.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/wmmintrin.h:87:1: error: inlining failed in call to 'always_inline' '_mm_aeskeygenassist_si128': target specific option mismatch
core.c: 87 | _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
core.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~
core.c: core.c:20:11: note: called from here
core.c: 20 | temp1 = _mm_aeskeygenassist_si128(temp0, IMM); \
core.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
core.c: core.c:38:3: note: in expansion of macro 'BLOCK1'
core.c: 38 | BLOCK1(0x36);
core.c: | ^~~~~~
core.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:41,
core.c: from core.c:9:
core.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/wmmintrin.h:87:1: error: inlining failed in call to 'always_inline' '_mm_aeskeygenassist_si128': target specific option mismatch
core.c: 87 | _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
core.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~
core.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
dolbeau/aesenc-int | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
dolbeau/aesenc-int | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
dolbeau/aesenc-int | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
dolbeau/aesenc-int | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Compiler output
core.c: In file included from core.c:9:
core.c: stdaes-common.h:548:21: warning: 'KT3' defined but not used [-Wunused-variable]
core.c: 548 | static unsigned int KT3[256] = KT0Data;
core.c: | ^~~
core.c: stdaes-common.h:541:21: warning: 'KT2' defined but not used [-Wunused-variable]
core.c: 541 | static unsigned int KT2[256] = KT0Data;
core.c: | ^~~
core.c: stdaes-common.h:534:21: warning: 'KT1' defined but not used [-Wunused-variable]
core.c: 534 | static unsigned int KT1[256] = KT0Data;
core.c: | ^~~
core.c: stdaes-common.h:527:21: warning: 'KT0' defined but not used [-Wunused-variable]
core.c: 527 | static unsigned int KT0[256] = KT0Data;
core.c: | ^~~
core.c: stdaes-common.h:450:21: warning: 'RT3' defined but not used [-Wunused-variable]
core.c: 450 | static unsigned int RT3[256] = { RT };
core.c: | ^~~
core.c: stdaes-common.h:443:21: warning: 'RT2' defined but not used [-Wunused-variable]
core.c: 443 | static unsigned int RT2[256] = { RT };
core.c: | ^~~
core.c: stdaes-common.h:436:21: warning: 'RT1' defined but not used [-Wunused-variable]
core.c: 436 | static unsigned int RT1[256] = { RT };
core.c: | ^~~
core.c: stdaes-common.h:429:21: warning: 'RT0' defined but not used [-Wunused-variable]
core.c: 429 | static unsigned int RT0[256] = { RT };
core.c: | ^~~
core.c: ...
Number of similar (implementation,compiler) pairs: 12, namely:
Implementation | Compiler |
T:dolbeau/std-1ft | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:dolbeau/std-1ft | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:dolbeau/std-1ft | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:dolbeau/std-1ft | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:dolbeau/std-2ft | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:dolbeau/std-2ft | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:dolbeau/std-2ft | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:dolbeau/std-2ft | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:dolbeau/std-4ft | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:dolbeau/std-4ft | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:dolbeau/std-4ft | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:dolbeau/std-4ft | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Compiler output
core.c: core.c:12:3: warning: 'AES_set_encrypt_key' is deprecated [-Wdeprecated-declarations]
core.c: AES_set_encrypt_key(k,128,&kexp);
core.c: ^
core.c: /usr/include/openssl/aes.h:50:1: note: 'AES_set_encrypt_key' has been explicitly marked deprecated here
core.c: OSSL_DEPRECATEDIN_3_0
core.c: ^
core.c: /usr/include/openssl/macros.h:182:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
core.c: # define OSSL_DEPRECATEDIN_3_0 OSSL_DEPRECATED(3.0)
core.c: ^
core.c: /usr/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
core.c: # define OSSL_DEPRECATED(since) __attribute__((deprecated))
core.c: ^
core.c: core.c:13:3: warning: 'AES_encrypt' is deprecated [-Wdeprecated-declarations]
core.c: AES_encrypt(in,out,&kexp);
core.c: ^
core.c: /usr/include/openssl/aes.h:56:1: note: 'AES_encrypt' has been explicitly marked deprecated here
core.c: OSSL_DEPRECATEDIN_3_0
core.c: ^
core.c: /usr/include/openssl/macros.h:182:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
core.c: # define OSSL_DEPRECATEDIN_3_0 OSSL_DEPRECATED(3.0)
core.c: ^
core.c: /usr/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
core.c: # define OSSL_DEPRECATED(since) __attribute__((deprecated))
core.c: ^
core.c: 2 warnings generated.
Number of similar (implementation,compiler) pairs: 5, namely:
Implementation | Compiler |
T:openssl | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:openssl | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:openssl | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:openssl | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:openssl | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
core.c: core.c: In function 'crypto_core_aes128encrypt_openssl_timingleaks':
core.c: core.c:12:3: warning: 'AES_set_encrypt_key' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
core.c: 12 | AES_set_encrypt_key(k,128,&kexp);
core.c: | ^~~~~~~~~~~~~~~~~~~
core.c: In file included from core.c:1:
core.c: /usr/include/openssl/aes.h:51:5: note: declared here
core.c: 51 | int AES_set_encrypt_key(const unsigned char *userKey, const int bits,
core.c: | ^~~~~~~~~~~~~~~~~~~
core.c: core.c:13:3: warning: 'AES_encrypt' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
core.c: 13 | AES_encrypt(in,out,&kexp);
core.c: | ^~~~~~~~~~~
core.c: In file included from core.c:1:
core.c: /usr/include/openssl/aes.h:57:6: note: declared here
core.c: 57 | void AES_encrypt(const unsigned char *in, unsigned char *out,
core.c: | ^~~~~~~~~~~
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:openssl | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:openssl | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:openssl | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:openssl | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Passed TIMECOP
TIMECOP iterations: 1
Number of similar (implementation,compiler) pairs: 9, namely:
Implementation | Compiler |
ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |