Implementation notes: amd64, pmnod003, crypto_core/aes256encrypt

Computer: pmnod003
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20190910
Operation: crypto_core
Primitive: aes256encrypt
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
206616 0 013891 832 800dolbeau/aesenc-intgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
206640 0 017149 856 832dolbeau/aesenc-inticc_-xCORE-AVX512_-O2_-fomit-frame-pointer2019091220190910
206640 0 017053 856 832dolbeau/aesenc-inticc_-xCORE-AVX512_-O3_-fomit-frame-pointer2019091220190910
208592 0 016467 856 768dolbeau/aesenc-inticc_-xAVX_-O3_-fomit-frame-pointer2019091220190910
208592 0 017229 856 832dolbeau/aesenc-inticc_-xCOMMON-AVX512_-O2_-fomit-frame-pointer2019091220190910
208592 0 016701 856 832dolbeau/aesenc-inticc_-xCOMMON-AVX512_-O3_-fomit-frame-pointer2019091220190910
208592 0 016435 856 768dolbeau/aesenc-inticc_-xCORE-AVX-I_-O2_-fomit-frame-pointer2019091220190910
208592 0 016467 856 768dolbeau/aesenc-inticc_-xCORE-AVX-I_-O3_-fomit-frame-pointer2019091220190910
208592 0 016805 856 768dolbeau/aesenc-inticc_-xCORE-AVX2_-O2_-fomit-frame-pointer2019091220190910
208592 0 016389 856 768dolbeau/aesenc-inticc_-xCORE-AVX2_-O3_-fomit-frame-pointer2019091220190910
210592 0 016435 856 768dolbeau/aesenc-inticc_-xAVX_-O2_-fomit-frame-pointer2019091220190910
214752 0 015455 856 768dolbeau/aesenc-inticc_-xSSE4.1_-O2_-fomit-frame-pointer2019091220190910
216752 0 015527 856 768dolbeau/aesenc-inticc_-xSSE4.1_-O3_-fomit-frame-pointer2019091220190910
216752 0 015299 856 768dolbeau/aesenc-inticc_-xSSE4.2_-O2_-fomit-frame-pointer2019091220190910
216752 0 015355 856 768dolbeau/aesenc-inticc_-xSSE4.2_-O3_-fomit-frame-pointer2019091220190910
226646 0 011166 824 800dolbeau/aesenc-intgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
232637 0 010270 808 800dolbeau/aesenc-intgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
234639 0 011142 824 800dolbeau/aesenc-intgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
43210816 0 025363 856 768dolbeau/std-4fticc_-xSSE4.2_-O2_-fomit-frame-pointer2019091220190910
43410816 0 027389 856 832dolbeau/std-4fticc_-xCOMMON-AVX512_-O2_-fomit-frame-pointer2019091220190910
43410816 0 027029 856 768dolbeau/std-4fticc_-xCORE-AVX2_-O2_-fomit-frame-pointer2019091220190910
43410832 0 027309 856 832dolbeau/std-4fticc_-xCORE-AVX512_-O2_-fomit-frame-pointer2019091220190910
43610816 0 026675 856 768dolbeau/std-4fticc_-xAVX_-O2_-fomit-frame-pointer2019091220190910
43610896 0 026693 856 768dolbeau/std-4fticc_-xCORE-AVX2_-O3_-fomit-frame-pointer2019091220190910
44010832 0 025535 856 768dolbeau/std-4fticc_-xSSE4.1_-O2_-fomit-frame-pointer2019091220190910
44010896 0 025671 856 768dolbeau/std-4fticc_-xSSE4.1_-O3_-fomit-frame-pointer2019091220190910
44010880 0 025483 856 768dolbeau/std-4fticc_-xSSE4.2_-O3_-fomit-frame-pointer2019091220190910
44210896 0 026941 856 832dolbeau/std-4fticc_-xCOMMON-AVX512_-O3_-fomit-frame-pointer2019091220190910
44610816 0 026675 856 768dolbeau/std-4fticc_-xCORE-AVX-I_-O2_-fomit-frame-pointer2019091220190910
45010896 0 026787 856 768dolbeau/std-4fticc_-xAVX_-O3_-fomit-frame-pointer2019091220190910
45010912 0 027293 856 832dolbeau/std-4fticc_-xCORE-AVX512_-O3_-fomit-frame-pointer2019091220190910
45410896 0 026787 856 768dolbeau/std-4fticc_-xCORE-AVX-I_-O3_-fomit-frame-pointer2019091220190910
4566240 0 019515 832 800dolbeau/std-4ftgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
4606282 0 016846 824 800dolbeau/std-4ftgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
4766256 0 015918 808 800dolbeau/std-4ftgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
4829520 0 024223 856 768dolbeau/std-2fticc_-xSSE4.1_-O2_-fomit-frame-pointer2019091220190910
4863150 0 012814 808 800dolbeau/std-1ftgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
4869488 0 025701 856 768dolbeau/std-2fticc_-xCORE-AVX2_-O2_-fomit-frame-pointer2019091220190910
4869568 0 024343 856 768dolbeau/std-2fticc_-xSSE4.1_-O3_-fomit-frame-pointer2019091220190910
4869504 0 024051 856 768dolbeau/std-2fticc_-xSSE4.2_-O2_-fomit-frame-pointer2019091220190910
4889488 0 026061 856 832dolbeau/std-2fticc_-xCOMMON-AVX512_-O2_-fomit-frame-pointer2019091220190910
4909536 0 025581 856 832dolbeau/std-2fticc_-xCOMMON-AVX512_-O3_-fomit-frame-pointer2019091220190910
4924258 0 017531 832 800dolbeau/std-2ftgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
4949536 0 025333 856 768dolbeau/std-2fticc_-xCORE-AVX2_-O3_-fomit-frame-pointer2019091220190910
4949504 0 025981 856 832dolbeau/std-2fticc_-xCORE-AVX512_-O2_-fomit-frame-pointer2019091220190910
4949536 0 025917 856 832dolbeau/std-2fticc_-xCORE-AVX512_-O3_-fomit-frame-pointer2019091220190910
4966309 0 016838 824 800dolbeau/std-4ftgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
4984277 0 014830 824 800dolbeau/std-2ftgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
4989728 0 025587 856 768dolbeau/std-2fticc_-xCORE-AVX-I_-O2_-fomit-frame-pointer2019091220190910
5009728 0 025587 856 768dolbeau/std-2fticc_-xAVX_-O2_-fomit-frame-pointer2019091220190910
5009552 0 024155 856 768dolbeau/std-2fticc_-xSSE4.2_-O3_-fomit-frame-pointer2019091220190910
5028720 0 024765 856 832dolbeau/std-1fticc_-xCOMMON-AVX512_-O3_-fomit-frame-pointer2019091220190910
5028736 0 024949 856 768dolbeau/std-1fticc_-xCORE-AVX2_-O2_-fomit-frame-pointer2019091220190910
5028736 0 025213 856 832dolbeau/std-1fticc_-xCORE-AVX512_-O2_-fomit-frame-pointer2019091220190910
5028752 0 023455 856 768dolbeau/std-1fticc_-xSSE4.1_-O2_-fomit-frame-pointer2019091220190910
5043263 0 013798 824 800dolbeau/std-1ftgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
5048736 0 023283 856 768dolbeau/std-1fticc_-xSSE4.2_-O2_-fomit-frame-pointer2019091220190910
5048672 0 023275 856 768dolbeau/std-1fticc_-xSSE4.2_-O3_-fomit-frame-pointer2019091220190910
5049680 0 025571 856 768dolbeau/std-2fticc_-xAVX_-O3_-fomit-frame-pointer2019091220190910
5049680 0 025571 856 768dolbeau/std-2fticc_-xCORE-AVX-I_-O3_-fomit-frame-pointer2019091220190910
5068720 0 024517 856 768dolbeau/std-1fticc_-xCORE-AVX2_-O3_-fomit-frame-pointer2019091220190910
5068736 0 025117 856 832dolbeau/std-1fticc_-xCORE-AVX512_-O3_-fomit-frame-pointer2019091220190910
5083237 0 016507 832 800dolbeau/std-1ftgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
5088736 0 025309 856 832dolbeau/std-1fticc_-xCOMMON-AVX512_-O2_-fomit-frame-pointer2019091220190910
5108688 0 023463 856 768dolbeau/std-1fticc_-xSSE4.1_-O3_-fomit-frame-pointer2019091220190910
5144285 0 014822 824 800dolbeau/std-2ftgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
5188912 0 024771 856 768dolbeau/std-1fticc_-xAVX_-O2_-fomit-frame-pointer2019091220190910
5208912 0 024771 856 768dolbeau/std-1fticc_-xCORE-AVX-I_-O2_-fomit-frame-pointer2019091220190910
5243258 0 013822 824 800dolbeau/std-1ftgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
5348848 0 024739 856 768dolbeau/std-1fticc_-xCORE-AVX-I_-O3_-fomit-frame-pointer2019091220190910
5424241 0 013902 808 800dolbeau/std-2ftgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
5448848 0 024739 856 768dolbeau/std-1fticc_-xAVX_-O3_-fomit-frame-pointer2019091220190910
712160 0 016941 872 832opensslicc_-xCOMMON-AVX512_-O2_-fomit-frame-pointer2019091220190910
712160 0 016845 872 832opensslicc_-xCORE-AVX512_-O2_-fomit-frame-pointer2019091220190910
712160 0 016749 872 832opensslicc_-xCORE-AVX512_-O3_-fomit-frame-pointer2019091220190910
716143 0 013627 848 800opensslgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
716145 0 09950 824 800opensslgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
716160 0 016211 872 768opensslicc_-xAVX_-O2_-fomit-frame-pointer2019091220190910
716160 0 016243 872 768opensslicc_-xAVX_-O3_-fomit-frame-pointer2019091220190910
716160 0 016211 872 768opensslicc_-xCORE-AVX-I_-O2_-fomit-frame-pointer2019091220190910
716160 0 015055 872 768opensslicc_-xSSE4.1_-O2_-fomit-frame-pointer2019091220190910
716160 0 015127 872 768opensslicc_-xSSE4.1_-O3_-fomit-frame-pointer2019091220190910
716160 0 014899 872 768opensslicc_-xSSE4.2_-O2_-fomit-frame-pointer2019091220190910
716160 0 014955 872 768opensslicc_-xSSE4.2_-O3_-fomit-frame-pointer2019091220190910
718160 0 016243 872 768opensslicc_-xCORE-AVX-I_-O3_-fomit-frame-pointer2019091220190910
720143 0 010878 840 800opensslgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
722160 0 016413 872 832opensslicc_-xCOMMON-AVX512_-O3_-fomit-frame-pointer2019091220190910
724160 0 016165 872 768opensslicc_-xCORE-AVX2_-O3_-fomit-frame-pointer2019091220190910
726144 0 010854 840 800opensslgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
736160 0 016581 872 768opensslicc_-xCORE-AVX2_-O2_-fomit-frame-pointer2019091220190910
2419983721 0 017019 832 800refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
55361212368 0 028861 856 832reficc_-xCORE-AVX512_-O2_-fomit-frame-pointer2019091220190910
56522411760 0 028157 856 832reficc_-xCORE-AVX512_-O3_-fomit-frame-pointer2019091220190910
58336812000 0 028589 856 832reficc_-xCOMMON-AVX512_-O2_-fomit-frame-pointer2019091220190910
59270012064 0 028125 856 832reficc_-xCOMMON-AVX512_-O3_-fomit-frame-pointer2019091220190910
63224813664 0 029893 856 768reficc_-xCORE-AVX2_-O2_-fomit-frame-pointer2019091220190910
63837612960 0 028773 856 768reficc_-xCORE-AVX2_-O3_-fomit-frame-pointer2019091220190910
65357816408 0 031011 856 768reficc_-xSSE4.2_-O3_-fomit-frame-pointer2019091220190910
65365816408 0 031183 856 768reficc_-xSSE4.1_-O3_-fomit-frame-pointer2019091220190910
65661216856 0 031403 856 768reficc_-xSSE4.2_-O2_-fomit-frame-pointer2019091220190910
65662016856 0 031559 856 768reficc_-xSSE4.1_-O2_-fomit-frame-pointer2019091220190910
65830416792 0 032667 856 768reficc_-xAVX_-O3_-fomit-frame-pointer2019091220190910
65847616792 0 032667 856 768reficc_-xCORE-AVX-I_-O3_-fomit-frame-pointer2019091220190910
66019817048 0 032891 856 768reficc_-xAVX_-O2_-fomit-frame-pointer2019091220190910
66113817048 0 032891 856 768reficc_-xCORE-AVX-I_-O2_-fomit-frame-pointer2019091220190910
8219501745 0 012254 824 800refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
8269381609 0 011230 808 800refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019091220190910
8341081789 0 012326 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