Implementation notes: amd64, genji346, crypto_aead/paeq128

Computer: genji346
Architecture: amd64
CPU ID: AuthenticAMD-00830f10-178bfbff
SUPERCOP version: 20191017
Operation: crypto_aead
Primitive: paeq128
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
239208664 28 6553621321 876 66464aesnig++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
2448031720 28 6553648990 908 66400aesniicpc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102520191017
2462031176 28 6553648494 908 66400aesniicpc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102520191017
2614031128 28 6553649726 908 66400aesniicpc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102520191017
2614031128 28 6553649726 908 66400aesniicpc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102520191017
2620031128 28 6553649726 908 66400aesniicpc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102520191017
2620031128 28 6553649726 908 66400aesniicpc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102520191017
2630031264 28 6553649782 908 66400aesniicpc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102520191017
2638031264 28 6553649782 908 66400aesniicpc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102520191017
2642031264 28 6553649782 908 66400aesniicpc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102520191017
2650031264 28 6553649782 908 66400aesniicpc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102520191017
2856031072 28 6553649646 908 66400aesniicpc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102520191017
2858031072 28 6553649646 908 66400aesniicpc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102520191017
2860031072 28 6553649646 908 66400aesniicpc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102520191017
2866031072 28 6553649646 908 66400aesniicpc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102520191017
2876031344 28 6553650270 908 66400aesniicpc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102520191017
2878031344 28 6553650270 908 66400aesniicpc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102520191017
2880031344 28 6553650270 908 66400aesniicpc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102520191017
2882031344 28 6553650270 908 66400aesniicpc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102520191017
303408871 28 6553621705 876 66464aesnig++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
3048030015 28 6553645030 884 66464aesnig++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
354606974 28 6553618617 860 66464aesnig++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
208194010618 32 6553625576 872 66416refclang++_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
20946609506 32 6553623808 872 66416refclang++_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
21101009506 32 6553623808 872 66416refclang++_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
250550039968 28 6553657286 908 66400reficpc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102520191017
254428038304 28 6553656822 908 66400reficpc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102520191017
254526038304 28 6553656822 908 66400reficpc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102520191017
255098038304 28 6553656822 908 66400reficpc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102520191017
255376038304 28 6553656822 908 66400reficpc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102520191017
256178037336 28 6553655934 908 66400reficpc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102520191017
256482037336 28 6553655934 908 66400reficpc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102520191017
256792037336 28 6553655934 908 66400reficpc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102520191017
257164037336 28 6553655934 908 66400reficpc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102520191017
260100040560 28 6553657830 908 66400reficpc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102520191017
262704037656 28 6553656230 908 66400reficpc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102520191017
263554037656 28 6553656230 908 66400reficpc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102520191017
263870037656 28 6553656230 908 66400reficpc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102520191017
264490037656 28 6553656230 908 66400reficpc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102520191017
274934038656 28 6553657582 908 66400reficpc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102520191017
275108038656 28 6553657582 908 66400reficpc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102520191017
275372038656 28 6553657582 908 66400reficpc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102520191017
275466038656 28 6553657582 908 66400reficpc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102520191017
448290013213 28 6553628238 884 66464refg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
61431805668 32 6553617302 864 66400refclang++_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
81066806631 28 6553619473 876 66464refg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
88448205612 28 6553618265 876 66464refg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
272369204711 28 6553616329 860 66464refg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017

Test failure

Implementation: aesni
Security model: unknown
Compiler: icpc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
icpc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer aesni
icpc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer aesni
icpc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer aesni
icpc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer aesni
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer aesni
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer aesni
icpc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer ref
icpc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer ref
icpc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer ref
icpc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer ref
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer ref
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer ref

Compiler output

Implementation: aesni
Security model: unknown
Compiler: clang++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.cpp: In file included from encrypt.cpp:13:
encrypt.cpp: 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/wmmintrin.h:31:
encrypt.cpp: 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/emmintrin.h:31:
encrypt.cpp: 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:31:
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:55:72: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:61:72: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:68:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:74:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:84:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:90:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:97:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE aesni
clang++ -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE aesni
clang++ -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE aesni
clang++ -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE aesni

Compiler output

Implementation: aesni
Security model: unknown
Compiler: icpc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer
encrypt.cpp: encrypt.cpp(21): warning #1879: unimplemented pragma ignored
encrypt.cpp: #pragma intrinsic(_mm_set_epi64x)
encrypt.cpp: ^
encrypt.cpp:

Number of similar (compiler,implementation) pairs: 24, namely:
CompilerImplementations
icpc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer aesni
icpc -march=broadwell -mtune=broadwell -O3 -fomit-frame-pointer aesni
icpc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer aesni
icpc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer aesni
icpc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer aesni
icpc -march=core-avx-i -mtune=core-avx-i -O3 -fomit-frame-pointer aesni
icpc -march=core-avx2 -mtune=core-avx2 -O2 -fomit-frame-pointer aesni
icpc -march=core-avx2 -mtune=core-avx2 -O3 -fomit-frame-pointer aesni
icpc -march=corei7-avx -mtune=corei7-avx -O2 -fomit-frame-pointer aesni
icpc -march=corei7-avx -mtune=corei7-avx -O3 -fomit-frame-pointer aesni
icpc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer aesni
icpc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer aesni
icpc -march=haswell -mtune=haswell -O2 -fomit-frame-pointer aesni
icpc -march=haswell -mtune=haswell -O3 -fomit-frame-pointer aesni
icpc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer aesni
icpc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer aesni
icpc -march=ivybridge -mtune=ivybridge -O2 -fomit-frame-pointer aesni
icpc -march=ivybridge -mtune=ivybridge -O3 -fomit-frame-pointer aesni
icpc -march=sandybridge -mtune=sandybridge -O2 -fomit-frame-pointer aesni
icpc -march=sandybridge -mtune=sandybridge -O3 -fomit-frame-pointer aesni
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer aesni
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer aesni
icpc -march=skylake -mtune=skylake -O2 -fomit-frame-pointer aesni
icpc -march=skylake -mtune=skylake -O3 -fomit-frame-pointer aesni

Compiler output

Implementation: opt-win-aes
Security model: unknown
Compiler: clang++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.cpp: In file included from encrypt.cpp:12:
encrypt.cpp: 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/wmmintrin.h:31:
encrypt.cpp: 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/emmintrin.h:31:
encrypt.cpp: 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:31:
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:55:72: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:61:72: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:68:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:74:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:84:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:90:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:97:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.cpp: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.cpp: ^
encrypt.cpp: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE opt-win-aes
clang++ -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE opt-win-aes
clang++ -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE opt-win-aes
clang++ -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE opt-win-aes

Compiler output

Implementation: opt-win-aes
Security model: unknown
Compiler: g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.cpp: encrypt.cpp:13:10: fatal error: intrin.h: No such file or directory
encrypt.cpp: 13 | #include <intrin.h>
encrypt.cpp: | ^~~~~~~~~~
encrypt.cpp: compilation terminated.

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE opt-win-aes
g++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE opt-win-aes
g++ -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE opt-win-aes
g++ -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE opt-win-aes

Compiler output

Implementation: opt-win-aes
Security model: unknown
Compiler: icpc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer
encrypt.cpp: encrypt.cpp(13): catastrophic error: cannot open source file "intrin.h"
encrypt.cpp: #include <intrin.h>
encrypt.cpp: ^
encrypt.cpp:
encrypt.cpp: compilation aborted for encrypt.cpp (code 4)

Number of similar (compiler,implementation) pairs: 24, namely:
CompilerImplementations
icpc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer opt-win-aes
icpc -march=broadwell -mtune=broadwell -O3 -fomit-frame-pointer opt-win-aes
icpc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer opt-win-aes
icpc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer opt-win-aes
icpc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer opt-win-aes
icpc -march=core-avx-i -mtune=core-avx-i -O3 -fomit-frame-pointer opt-win-aes
icpc -march=core-avx2 -mtune=core-avx2 -O2 -fomit-frame-pointer opt-win-aes
icpc -march=core-avx2 -mtune=core-avx2 -O3 -fomit-frame-pointer opt-win-aes
icpc -march=corei7-avx -mtune=corei7-avx -O2 -fomit-frame-pointer opt-win-aes
icpc -march=corei7-avx -mtune=corei7-avx -O3 -fomit-frame-pointer opt-win-aes
icpc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer opt-win-aes
icpc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer opt-win-aes
icpc -march=haswell -mtune=haswell -O2 -fomit-frame-pointer opt-win-aes
icpc -march=haswell -mtune=haswell -O3 -fomit-frame-pointer opt-win-aes
icpc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer opt-win-aes
icpc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer opt-win-aes
icpc -march=ivybridge -mtune=ivybridge -O2 -fomit-frame-pointer opt-win-aes
icpc -march=ivybridge -mtune=ivybridge -O3 -fomit-frame-pointer opt-win-aes
icpc -march=sandybridge -mtune=sandybridge -O2 -fomit-frame-pointer opt-win-aes
icpc -march=sandybridge -mtune=sandybridge -O3 -fomit-frame-pointer opt-win-aes
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer opt-win-aes
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer opt-win-aes
icpc -march=skylake -mtune=skylake -O2 -fomit-frame-pointer opt-win-aes
icpc -march=skylake -mtune=skylake -O3 -fomit-frame-pointer opt-win-aes