Implementation notes: amd64, pmnod003, crypto_core/aes256decrypt

Computer: pmnod003
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20190910
Operation: crypto_core
Primitive: aes256decrypt
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
208704 0 017117 856 832dolbeau/aesenc-inticc_-xCORE-AVX512_-O3_-fomit-frame-pointer2019091220190910
210704 0 017213 856 832dolbeau/aesenc-inticc_-xCORE-AVX512_-O2_-fomit-frame-pointer2019091220190910
212672 0 016515 856 768dolbeau/aesenc-inticc_-xAVX_-O2_-fomit-frame-pointer2019091220190910
212672 0 016515 856 768dolbeau/aesenc-inticc_-xCORE-AVX-I_-O2_-fomit-frame-pointer2019091220190910
212672 0 016885 856 768dolbeau/aesenc-inticc_-xCORE-AVX2_-O2_-fomit-frame-pointer2019091220190910
214672 0 016547 856 768dolbeau/aesenc-inticc_-xAVX_-O3_-fomit-frame-pointer2019091220190910
214672 0 017309 856 832dolbeau/aesenc-inticc_-xCOMMON-AVX512_-O2_-fomit-frame-pointer2019091220190910
214672 0 016781 856 832dolbeau/aesenc-inticc_-xCOMMON-AVX512_-O3_-fomit-frame-pointer2019091220190910
214672 0 016547 856 768dolbeau/aesenc-inticc_-xCORE-AVX-I_-O3_-fomit-frame-pointer2019091220190910
214672 0 016469 856 768dolbeau/aesenc-inticc_-xCORE-AVX2_-O3_-fomit-frame-pointer2019091220190910
222832 0 015535 856 768dolbeau/aesenc-inticc_-xSSE4.1_-O2_-fomit-frame-pointer2019091220190910
222832 0 015607 856 768dolbeau/aesenc-inticc_-xSSE4.1_-O3_-fomit-frame-pointer2019091220190910
222832 0 015379 856 768dolbeau/aesenc-inticc_-xSSE4.2_-O2_-fomit-frame-pointer2019091220190910
222832 0 015435 856 768dolbeau/aesenc-inticc_-xSSE4.2_-O3_-fomit-frame-pointer2019091220190910
248745 0 011278 824 800dolbeau/aesenc-intgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
254728 0 010366 808 800dolbeau/aesenc-intgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
258704 0 011206 824 800dolbeau/aesenc-intgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
594661 0 013939 832 800dolbeau/aesenc-intgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
6187495 0 018046 824 800dolbeau/std-2rt-nodkgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
6347485 0 017150 808 800dolbeau/std-2rt-nodkgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
6385419 0 015086 808 800dolbeau/std-1rt-nodkgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
64411611 0 022174 824 800dolbeau/std-4rt-nodkgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
6505414 0 018683 832 800dolbeau/std-1rt-nodkgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
65411596 0 024875 832 800dolbeau/std-4rt-nodkgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
6585455 0 016014 824 800dolbeau/std-1rt-nodkgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
6687514 0 018038 824 800dolbeau/std-2rt-nodkgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
67019712 0 034415 856 768dolbeau/std-4rt-nodkicc_-xSSE4.1_-O2_-fomit-frame-pointer2019091220190910
6727517 0 020795 832 800dolbeau/std-2rt-nodkgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
67211557 0 021214 808 800dolbeau/std-4rt-nodkgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
67219728 0 036237 856 832dolbeau/std-4rt-nodkicc_-xCORE-AVX512_-O2_-fomit-frame-pointer2019091220190910
67419728 0 035941 856 768dolbeau/std-4rt-nodkicc_-xCORE-AVX2_-O2_-fomit-frame-pointer2019091220190910
67619728 0 036365 856 832dolbeau/std-4rt-nodkicc_-xCOMMON-AVX512_-O2_-fomit-frame-pointer2019091220190910
67619920 0 036333 856 832dolbeau/std-4rt-nodkicc_-xCORE-AVX512_-O3_-fomit-frame-pointer2019091220190910
67819920 0 036029 856 832dolbeau/std-4rt-nodkicc_-xCOMMON-AVX512_-O3_-fomit-frame-pointer2019091220190910
67819696 0 034243 856 768dolbeau/std-4rt-nodkicc_-xSSE4.2_-O2_-fomit-frame-pointer2019091220190910
67819888 0 034491 856 768dolbeau/std-4rt-nodkicc_-xSSE4.2_-O3_-fomit-frame-pointer2019091220190910
68019712 0 035571 856 768dolbeau/std-4rt-nodkicc_-xAVX_-O2_-fomit-frame-pointer2019091220190910
68219712 0 035571 856 768dolbeau/std-4rt-nodkicc_-xCORE-AVX-I_-O2_-fomit-frame-pointer2019091220190910
68219904 0 034679 856 768dolbeau/std-4rt-nodkicc_-xSSE4.1_-O3_-fomit-frame-pointer2019091220190910
68819920 0 035811 856 768dolbeau/std-4rt-nodkicc_-xAVX_-O3_-fomit-frame-pointer2019091220190910
69019920 0 035811 856 768dolbeau/std-4rt-nodkicc_-xCORE-AVX-I_-O3_-fomit-frame-pointer2019091220190910
69019920 0 035717 856 768dolbeau/std-4rt-nodkicc_-xCORE-AVX2_-O3_-fomit-frame-pointer2019091220190910
69211668 0 022198 824 800dolbeau/std-4rt-nodkgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
70016160 0 030863 856 768dolbeau/std-2rt-nodkicc_-xSSE4.1_-O2_-fomit-frame-pointer2019091220190910
70415952 0 030727 856 768dolbeau/std-2rt-nodkicc_-xSSE4.1_-O3_-fomit-frame-pointer2019091220190910
70416160 0 030707 856 768dolbeau/std-2rt-nodkicc_-xSSE4.2_-O2_-fomit-frame-pointer2019091220190910
70415952 0 030555 856 768dolbeau/std-2rt-nodkicc_-xSSE4.2_-O3_-fomit-frame-pointer2019091220190910
7085468 0 015990 824 800dolbeau/std-1rt-nodkgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
71413888 0 028663 856 768dolbeau/std-1rt-nodkicc_-xSSE4.1_-O3_-fomit-frame-pointer2019091220190910
71616064 0 031955 856 768dolbeau/std-2rt-nodkicc_-xCORE-AVX-I_-O3_-fomit-frame-pointer2019091220190910
71814064 0 028611 856 768dolbeau/std-1rt-nodkicc_-xSSE4.2_-O2_-fomit-frame-pointer2019091220190910
71816384 0 033021 856 832dolbeau/std-2rt-nodkicc_-xCOMMON-AVX512_-O2_-fomit-frame-pointer2019091220190910
72014064 0 028767 856 768dolbeau/std-1rt-nodkicc_-xSSE4.1_-O2_-fomit-frame-pointer2019091220190910
72016064 0 031955 856 768dolbeau/std-2rt-nodkicc_-xAVX_-O3_-fomit-frame-pointer2019091220190910
72016272 0 032131 856 768dolbeau/std-2rt-nodkicc_-xCORE-AVX-I_-O2_-fomit-frame-pointer2019091220190910
72016384 0 032597 856 768dolbeau/std-2rt-nodkicc_-xCORE-AVX2_-O2_-fomit-frame-pointer2019091220190910
72016384 0 032893 856 832dolbeau/std-2rt-nodkicc_-xCORE-AVX512_-O2_-fomit-frame-pointer2019091220190910
72216176 0 032285 856 832dolbeau/std-2rt-nodkicc_-xCOMMON-AVX512_-O3_-fomit-frame-pointer2019091220190910
72216176 0 031973 856 768dolbeau/std-2rt-nodkicc_-xCORE-AVX2_-O3_-fomit-frame-pointer2019091220190910
72216176 0 032589 856 832dolbeau/std-2rt-nodkicc_-xCORE-AVX512_-O3_-fomit-frame-pointer2019091220190910
72813888 0 028491 856 768dolbeau/std-1rt-nodkicc_-xSSE4.2_-O3_-fomit-frame-pointer2019091220190910
73016272 0 032131 856 768dolbeau/std-2rt-nodkicc_-xAVX_-O2_-fomit-frame-pointer2019091220190910
73614224 0 030083 856 768dolbeau/std-1rt-nodkicc_-xAVX_-O2_-fomit-frame-pointer2019091220190910
74014048 0 029939 856 768dolbeau/std-1rt-nodkicc_-xAVX_-O3_-fomit-frame-pointer2019091220190910
74214048 0 029939 856 768dolbeau/std-1rt-nodkicc_-xCORE-AVX-I_-O3_-fomit-frame-pointer2019091220190910
74414448 0 030957 856 832dolbeau/std-1rt-nodkicc_-xCORE-AVX512_-O2_-fomit-frame-pointer2019091220190910
74614448 0 031085 856 832dolbeau/std-1rt-nodkicc_-xCOMMON-AVX512_-O2_-fomit-frame-pointer2019091220190910
74614224 0 030083 856 768dolbeau/std-1rt-nodkicc_-xCORE-AVX-I_-O2_-fomit-frame-pointer2019091220190910
75214448 0 030661 856 768dolbeau/std-1rt-nodkicc_-xCORE-AVX2_-O2_-fomit-frame-pointer2019091220190910
75414400 0 030509 856 832dolbeau/std-1rt-nodkicc_-xCOMMON-AVX512_-O3_-fomit-frame-pointer2019091220190910
75414400 0 030813 856 832dolbeau/std-1rt-nodkicc_-xCORE-AVX512_-O3_-fomit-frame-pointer2019091220190910
76414400 0 030197 856 768dolbeau/std-1rt-nodkicc_-xCORE-AVX2_-O3_-fomit-frame-pointer2019091220190910
1336138 0 013623 848 800opensslgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
1336144 0 016191 872 768opensslicc_-xAVX_-O2_-fomit-frame-pointer2019091220190910
1336144 0 016729 872 832opensslicc_-xCORE-AVX512_-O3_-fomit-frame-pointer2019091220190910
1340144 0 016145 872 768opensslicc_-xCORE-AVX2_-O3_-fomit-frame-pointer2019091220190910
1344144 0 016223 872 768opensslicc_-xCORE-AVX-I_-O3_-fomit-frame-pointer2019091220190910
1344144 0 015107 872 768opensslicc_-xSSE4.1_-O3_-fomit-frame-pointer2019091220190910
1344144 0 014879 872 768opensslicc_-xSSE4.2_-O2_-fomit-frame-pointer2019091220190910
1344144 0 014935 872 768opensslicc_-xSSE4.2_-O3_-fomit-frame-pointer2019091220190910
1346144 0 016561 872 768opensslicc_-xCORE-AVX2_-O2_-fomit-frame-pointer2019091220190910
1346144 0 016825 872 832opensslicc_-xCORE-AVX512_-O2_-fomit-frame-pointer2019091220190910
1346144 0 015035 872 768opensslicc_-xSSE4.1_-O2_-fomit-frame-pointer2019091220190910
1348139 0 010834 840 800opensslgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
1350144 0 016393 872 832opensslicc_-xCOMMON-AVX512_-O3_-fomit-frame-pointer2019091220190910
1352138 0 010874 840 800opensslgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
1352144 0 016191 872 768opensslicc_-xCORE-AVX-I_-O2_-fomit-frame-pointer2019091220190910
1356140 0 09946 824 800opensslgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
1366144 0 016223 872 768opensslicc_-xAVX_-O3_-fomit-frame-pointer2019091220190910
1376144 0 016921 872 832opensslicc_-xCOMMON-AVX512_-O2_-fomit-frame-pointer2019091220190910
2572105478 0 018803 832 800refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
65011618112 0 034613 856 832reficc_-xCORE-AVX512_-O2_-fomit-frame-pointer2019091220190910
65849617184 0 033589 856 832reficc_-xCORE-AVX512_-O3_-fomit-frame-pointer2019091220190910
68881619280 0 035877 856 832reficc_-xCOMMON-AVX512_-O2_-fomit-frame-pointer2019091220190910
69153017584 0 033653 856 832reficc_-xCOMMON-AVX512_-O3_-fomit-frame-pointer2019091220190910
75147818080 0 034317 856 768reficc_-xCORE-AVX2_-O2_-fomit-frame-pointer2019091220190910
75491218000 0 033821 856 768reficc_-xCORE-AVX2_-O3_-fomit-frame-pointer2019091220190910
77283424664 0 039447 856 768reficc_-xSSE4.1_-O3_-fomit-frame-pointer2019091220190910
77389024664 0 039275 856 768reficc_-xSSE4.2_-O3_-fomit-frame-pointer2019091220190910
77757824672 0 040555 856 768reficc_-xAVX_-O3_-fomit-frame-pointer2019091220190910
77766824672 0 040555 856 768reficc_-xCORE-AVX-I_-O3_-fomit-frame-pointer2019091220190910
78327424824 0 039535 856 768reficc_-xSSE4.1_-O2_-fomit-frame-pointer2019091220190910
78472824824 0 039379 856 768reficc_-xSSE4.2_-O2_-fomit-frame-pointer2019091220190910
78509824944 0 040795 856 768reficc_-xCORE-AVX-I_-O2_-fomit-frame-pointer2019091220190910
78618224944 0 040795 856 768reficc_-xAVX_-O2_-fomit-frame-pointer2019091220190910
9706962229 0 012750 824 800refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
9827122005 0 011630 808 800refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
9906242301 0 012846 824 800refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910

Compiler output

Implementation: dolbeau/aesenc-int
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
core.c: core.c: In function 'aes256ni_setkey_encrypt':
core.c: core.c:13:34: warning: passing argument 1 of '_mm_loadu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
core.c: 13 | __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
core.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
core.c: | |
core.c: | const unsigned int *
core.c: In file included from /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/xmmintrin.h:1255,
core.c: from /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/immintrin.h:29,
core.c: from core.c:9:
core.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/emmintrin.h:701:35: note: expected 'const __vector(2) long long int *' but argument is of type 'const unsigned int *'
core.c: 701 | _mm_loadu_si128 (__m128i_u const *__P)
core.c: | ~~~~~~~~~~~~~~~~~^~~
core.c: core.c:14:34: warning: passing argument 1 of '_mm_loadu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
core.c: 14 | __m128i key1 = _mm_loadu_si128((const unsigned int *)(key+16));
core.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
core.c: | |
core.c: | const unsigned int *
core.c: In file included from /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/xmmintrin.h:1255,
core.c: from /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/immintrin.h:29,
core.c: from core.c:9:
core.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/emmintrin.h:701:35: note: expected 'const __vector(2) long long int *' but argument is of type 'const unsigned int *'
core.c: 701 | _mm_loadu_si128 (__m128i_u const *__P)
core.c: | ~~~~~~~~~~~~~~~~~^~~

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/aesenc-int
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/aesenc-int
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/aesenc-int
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/aesenc-int

Compiler output

Implementation: dolbeau/aesenc-int
Security model: unknown
Compiler: icc -xAVX -O2 -fomit-frame-pointer
core.c: core.c(13): warning #167: argument of type "const unsigned int *" is incompatible with parameter of type "const union __m128i *"
core.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
core.c: ^
core.c:
core.c: core.c(14): warning #167: argument of type "const unsigned int *" is incompatible with parameter of type "const union __m128i *"
core.c: __m128i key1 = _mm_loadu_si128((const unsigned int *)(key+16));
core.c: ^
core.c:

Number of similar (compiler,implementation) pairs: 14, namely:
CompilerImplementations
icc -xAVX -O2 -fomit-frame-pointer dolbeau/aesenc-int
icc -xAVX -O3 -fomit-frame-pointer dolbeau/aesenc-int
icc -xCOMMON-AVX512 -O2 -fomit-frame-pointer dolbeau/aesenc-int
icc -xCOMMON-AVX512 -O3 -fomit-frame-pointer dolbeau/aesenc-int
icc -xCORE-AVX-I -O2 -fomit-frame-pointer dolbeau/aesenc-int
icc -xCORE-AVX-I -O3 -fomit-frame-pointer dolbeau/aesenc-int
icc -xCORE-AVX2 -O2 -fomit-frame-pointer dolbeau/aesenc-int
icc -xCORE-AVX2 -O3 -fomit-frame-pointer dolbeau/aesenc-int
icc -xCORE-AVX512 -O2 -fomit-frame-pointer dolbeau/aesenc-int
icc -xCORE-AVX512 -O3 -fomit-frame-pointer dolbeau/aesenc-int
icc -xSSE4.1 -O2 -fomit-frame-pointer dolbeau/aesenc-int
icc -xSSE4.1 -O3 -fomit-frame-pointer dolbeau/aesenc-int
icc -xSSE4.2 -O2 -fomit-frame-pointer dolbeau/aesenc-int
icc -xSSE4.2 -O3 -fomit-frame-pointer dolbeau/aesenc-int