Implementation notes: amd64, genji548, crypto_aead/hs1sivlov2

Computer: genji548
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20191017
Operation: crypto_aead
Primitive: hs1sivlov2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
415022794 0 042105 832 896dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
416819448 0 042877 872 928dolbeau/amd64-avx2icc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019101920191017
417419624 0 043309 872 928dolbeau/amd64-avx2icc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019101920191017
418819384 0 042925 872 928dolbeau/amd64-avx2icc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019101920191017
419020234 0 036860 824 896dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
419619528 0 043565 872 928dolbeau/amd64-avx2icc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019101920191017
423021544 0 045229 872 928dolbeau/amd64-avx512icc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019101920191017
423621544 0 044973 872 928dolbeau/amd64-avx512icc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019101920191017
423821432 0 045469 872 928dolbeau/amd64-avx512icc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019101920191017
425621352 0 044893 872 928dolbeau/amd64-avx512icc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019101920191017
435419609 0 036028 824 896dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
445012205 0 027388 808 896dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
464011522 0 031017 832 896fastergcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
470817784 0 040613 872 864dolbeau/amd64-avx2icc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019101920191017
471617784 0 040613 872 864dolbeau/amd64-avx2icc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019101920191017
472017784 0 040613 872 864dolbeau/amd64-avx2icc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019101920191017
473017592 0 040821 872 864dolbeau/amd64-avx2icc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019101920191017
474017592 0 040821 872 864dolbeau/amd64-avx2icc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019101920191017
474617784 0 040613 872 864dolbeau/amd64-avx2icc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019101920191017
475017592 0 040821 872 864dolbeau/amd64-avx2icc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019101920191017
475017592 0 040821 872 864dolbeau/amd64-avx2icc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019101920191017
475016208 0 039117 872 864fastericc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019101920191017
475216208 0 039117 872 864fastericc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019101920191017
475416192 0 039517 872 864fastericc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019101920191017
475616192 0 039517 872 864fastericc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019101920191017
475816208 0 039117 872 864fastericc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019101920191017
476016208 0 039117 872 864fastericc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019101920191017
476216192 0 039517 872 864fastericc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019101920191017
476216192 0 039517 872 864fastericc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019101920191017
476616640 0 040133 872 928fastericc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019101920191017
477016640 0 040213 872 928fastericc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019101920191017
477217264 0 041029 872 928fastericc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019101920191017
478417264 0 041397 872 928fastericc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019101920191017
49048367 0 025084 824 896fastergcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
49868199 0 024740 824 896fastergcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
50027654 0 022820 808 896fastergcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
650013976 0 037661 872 928dolbeau/amd64-sseicc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019101920191017
650413768 0 037165 872 928dolbeau/amd64-sseicc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019101920191017
657813752 0 037261 872 928dolbeau/amd64-sseicc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019101920191017
658013912 0 037949 872 928dolbeau/amd64-sseicc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019101920191017
663013784 0 036613 872 864dolbeau/amd64-sseicc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019101920191017
664013784 0 036613 872 864dolbeau/amd64-sseicc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019101920191017
664613784 0 036613 872 864dolbeau/amd64-sseicc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019101920191017
665013784 0 036613 872 864dolbeau/amd64-sseicc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019101920191017
667013440 0 036333 872 864dolbeau/amd64-sseicc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019101920191017
667413440 0 036333 872 864dolbeau/amd64-sseicc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019101920191017
667413440 0 036333 872 864dolbeau/amd64-sseicc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019101920191017
669419202 0 038505 832 896dolbeau/amd64-ssegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
670813440 0 036333 872 864dolbeau/amd64-sseicc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019101920191017
674413952 0 035557 872 864dolbeau/amd64-sseicc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019101920191017
674616730 0 033300 824 896dolbeau/amd64-ssegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
677013480 0 036709 872 864dolbeau/amd64-sseicc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019101920191017
677413480 0 036709 872 864dolbeau/amd64-sseicc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019101920191017
677613480 0 036709 872 864dolbeau/amd64-sseicc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019101920191017
678013480 0 036709 872 864dolbeau/amd64-sseicc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019101920191017
678015376 0 037109 872 864fastericc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019101920191017
680613192 0 036053 872 864dolbeau/amd64-sseicc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019101920191017
680813192 0 036053 872 864dolbeau/amd64-sseicc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019101920191017
681413192 0 036053 872 864dolbeau/amd64-sseicc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019101920191017
681813192 0 036053 872 864dolbeau/amd64-sseicc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019101920191017
683414848 0 036477 872 864fastericc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019101920191017
691215630 0 031996 824 896dolbeau/amd64-ssegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
69428001 0 023108 808 896dolbeau/amd64-ssegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
700013912 0 035461 872 864dolbeau/amd64-sseicc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019101920191017
1498445176 0 068917 872 928reficc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019101920191017
1506634824 0 058277 872 928reficc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019101920191017
1506838184 0 061069 872 864reficc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019101920191017
1507638184 0 061069 872 864reficc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019101920191017
1508238184 0 061069 872 864reficc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019101920191017
1512638184 0 061069 872 864reficc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019101920191017
1522237976 0 061261 872 864reficc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019101920191017
1523437976 0 061261 872 864reficc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019101920191017
1523434792 0 058357 872 928reficc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019101920191017
1524637976 0 061261 872 864reficc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019101920191017
1524647208 0 071301 872 928reficc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019101920191017
1526237976 0 061261 872 864reficc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019101920191017
1697235120 0 058069 872 864reficc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019101920191017
1699835120 0 058069 872 864reficc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019101920191017
1700035120 0 058069 872 864reficc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019101920191017
1702035120 0 058069 872 864reficc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019101920191017
1708036128 0 059045 872 864reficc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019101920191017
1709836128 0 059045 872 864reficc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019101920191017
1710236128 0 059045 872 864reficc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019101920191017
1710436128 0 059045 872 864reficc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019101920191017
1713432528 0 054189 872 864reficc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019101920191017
1717832992 0 054597 872 864reficc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019101920191017
209565732 0 025161 832 896refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
280165084 0 021764 824 896refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
303584054 0 019212 808 896refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017
371785580 0 022145 832 896refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101920191017

Test failure

Implementation: dolbeau/amd64-avx2
Security model: unknown
Compiler: icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer dolbeau/amd64-avx2
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer dolbeau/amd64-avx2
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer dolbeau/amd64-sse
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer dolbeau/amd64-sse
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer faster
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer faster
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer ref
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer ref

Compiler output

Implementation: dolbeau/amd64-avx2
Security model: unknown
Compiler: icc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer
encrypt.c: encrypt.c(90): error: #error directive: "This code requires AVX2 to work"
encrypt.c: #error "This code requires AVX2 to work"
encrypt.c: ^
encrypt.c:
encrypt.c: compilation aborted for encrypt.c (code 2)

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
icc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer dolbeau/amd64-avx2
icc -march=core-avx-i -mtune=core-avx-i -O3 -fomit-frame-pointer dolbeau/amd64-avx2
icc -march=corei7-avx -mtune=corei7-avx -O2 -fomit-frame-pointer dolbeau/amd64-avx2
icc -march=corei7-avx -mtune=corei7-avx -O3 -fomit-frame-pointer dolbeau/amd64-avx2
icc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
icc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
icc -march=ivybridge -mtune=ivybridge -O2 -fomit-frame-pointer dolbeau/amd64-avx2
icc -march=ivybridge -mtune=ivybridge -O3 -fomit-frame-pointer dolbeau/amd64-avx2
icc -march=sandybridge -mtune=sandybridge -O2 -fomit-frame-pointer dolbeau/amd64-avx2
icc -march=sandybridge -mtune=sandybridge -O3 -fomit-frame-pointer dolbeau/amd64-avx2

Compiler output

Implementation: dolbeau/amd64-avx512
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.c: encrypt.c:317:20: error: conflicting types for '_mm512_reduce_add_epi64'
encrypt.c: 317 | unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: | ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.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/immintrin.h:55,
encrypt.c: from encrypt.c:54:
encrypt.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/avx512fintrin.h:15726:1: note: previous definition of '_mm512_reduce_add_epi64' was here
encrypt.c: 15726 | _mm512_reduce_add_epi64 (__m512i __A)
encrypt.c: | ^~~~~~~~~~~~~~~~~~~~~~~

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

Compiler output

Implementation: dolbeau/amd64-avx512
Security model: unknown
Compiler: icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer
encrypt.c: encrypt.c(90): error: #error directive: "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^
encrypt.c:
encrypt.c: compilation aborted for encrypt.c (code 2)

Number of similar (compiler,implementation) pairs: 18, namely:
CompilerImplementations
icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=broadwell -mtune=broadwell -O3 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=core-avx-i -mtune=core-avx-i -O3 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=core-avx2 -mtune=core-avx2 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=core-avx2 -mtune=core-avx2 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=corei7-avx -mtune=corei7-avx -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=corei7-avx -mtune=corei7-avx -O3 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=haswell -mtune=haswell -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=haswell -mtune=haswell -O3 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=ivybridge -mtune=ivybridge -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=ivybridge -mtune=ivybridge -O3 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=sandybridge -mtune=sandybridge -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=sandybridge -mtune=sandybridge -O3 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=skylake -mtune=skylake -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=skylake -mtune=skylake -O3 -fomit-frame-pointer dolbeau/amd64-avx512

Compiler output

Implementation: faster
Security model: unknown
Compiler: icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer
hs1.c: hs1.c(1033): warning #266: function "malloc" declared implicitly
hs1.c: unsigned char *tmp = malloc(abytes);
hs1.c: ^
hs1.c:
hs1.c: hs1.c(1037): warning #266: function "free" declared implicitly
hs1.c: free(tmp);
hs1.c: ^
hs1.c:

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