Implementation notes: amd64, genji239, crypto_aead/hs1sivlov2

Computer: genji239
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20191017
Operation: crypto_aead
Primitive: hs1sivlov2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
414422794 0 042105 832 896dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102020191017
416619624 0 043309 872 928dolbeau/amd64-avx2icc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019102020191017
417021544 0 044973 872 928dolbeau/amd64-avx512icc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019102020191017
418419528 0 043565 872 928dolbeau/amd64-avx2icc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019102020191017
419619448 0 042877 872 928dolbeau/amd64-avx2icc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019102020191017
420420234 0 036860 824 896dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102020191017
420419384 0 042925 872 928dolbeau/amd64-avx2icc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019102020191017
423221544 0 045229 872 928dolbeau/amd64-avx512icc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019102020191017
423421432 0 045469 872 928dolbeau/amd64-avx512icc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019102020191017
424221352 0 044893 872 928dolbeau/amd64-avx512icc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019102020191017
427619609 0 036028 824 896dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102020191017
455412205 0 027388 808 896dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102020191017
463417592 0 040821 872 864dolbeau/amd64-avx2icc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102020191017
471617592 0 040821 872 864dolbeau/amd64-avx2icc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102020191017
472211522 0 031017 832 896fastergcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102020191017
473017592 0 040821 872 864dolbeau/amd64-avx2icc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102020191017
473017592 0 040821 872 864dolbeau/amd64-avx2icc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102020191017
473217784 0 040613 872 864dolbeau/amd64-avx2icc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102020191017
473417784 0 040613 872 864dolbeau/amd64-avx2icc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102020191017
473617784 0 040613 872 864dolbeau/amd64-avx2icc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102020191017
474617784 0 040613 872 864dolbeau/amd64-avx2icc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102020191017
475016208 0 039117 872 864fastericc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102020191017
475216208 0 039117 872 864fastericc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102020191017
475216192 0 039517 872 864fastericc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102020191017
475216192 0 039517 872 864fastericc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102020191017
475216208 0 039117 872 864fastericc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102020191017
475416192 0 039517 872 864fastericc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102020191017
475416192 0 039517 872 864fastericc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102020191017
476416640 0 040133 872 928fastericc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019102020191017
476617264 0 041029 872 928fastericc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019102020191017
477416640 0 040213 872 928fastericc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019102020191017
478017264 0 041397 872 928fastericc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019102020191017
478216208 0 039117 872 864fastericc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102020191017
48668367 0 025084 824 896fastergcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102020191017
49987654 0 022820 808 896fastergcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102020191017
50028199 0 024740 824 896fastergcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102020191017
649613976 0 037661 872 928dolbeau/amd64-sseicc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019102020191017
650213768 0 037165 872 928dolbeau/amd64-sseicc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019102020191017
657413752 0 037261 872 928dolbeau/amd64-sseicc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019102020191017
658213912 0 037949 872 928dolbeau/amd64-sseicc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019102020191017
661813784 0 036613 872 864dolbeau/amd64-sseicc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102020191017
663413784 0 036613 872 864dolbeau/amd64-sseicc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102020191017
663813784 0 036613 872 864dolbeau/amd64-sseicc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102020191017
664813784 0 036613 872 864dolbeau/amd64-sseicc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102020191017
666413440 0 036333 872 864dolbeau/amd64-sseicc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102020191017
667413440 0 036333 872 864dolbeau/amd64-sseicc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102020191017
669019202 0 038505 832 896dolbeau/amd64-ssegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102020191017
669413440 0 036333 872 864dolbeau/amd64-sseicc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102020191017
672816730 0 033300 824 896dolbeau/amd64-ssegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102020191017
673613952 0 035557 872 864dolbeau/amd64-sseicc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102020191017
675613480 0 036709 872 864dolbeau/amd64-sseicc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102020191017
676613480 0 036709 872 864dolbeau/amd64-sseicc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102020191017
676813480 0 036709 872 864dolbeau/amd64-sseicc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102020191017
677213480 0 036709 872 864dolbeau/amd64-sseicc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102020191017
678613440 0 036333 872 864dolbeau/amd64-sseicc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102020191017
680013192 0 036053 872 864dolbeau/amd64-sseicc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102020191017
680213192 0 036053 872 864dolbeau/amd64-sseicc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102020191017
680613192 0 036053 872 864dolbeau/amd64-sseicc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102020191017
681013192 0 036053 872 864dolbeau/amd64-sseicc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102020191017
682414848 0 036477 872 864fastericc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102020191017
684415376 0 037109 872 864fastericc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102020191017
690415630 0 031996 824 896dolbeau/amd64-ssegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102020191017
69588001 0 023108 808 896dolbeau/amd64-ssegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102020191017
700613912 0 035461 872 864dolbeau/amd64-sseicc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102020191017
1501645176 0 068917 872 928reficc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019102020191017
1505834824 0 058277 872 928reficc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019102020191017
1506838184 0 061069 872 864reficc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102020191017
1507038184 0 061069 872 864reficc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102020191017
1507438184 0 061069 872 864reficc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102020191017
1507638184 0 061069 872 864reficc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102020191017
1521837976 0 061261 872 864reficc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102020191017
1521837976 0 061261 872 864reficc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102020191017
1522847208 0 071301 872 928reficc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019102020191017
1525837976 0 061261 872 864reficc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102020191017
1527234792 0 058357 872 928reficc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019102020191017
1527837976 0 061261 872 864reficc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102020191017
1695435120 0 058069 872 864reficc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102020191017
1697835120 0 058069 872 864reficc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102020191017
1701235120 0 058069 872 864reficc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102020191017
1704035120 0 058069 872 864reficc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102020191017
1710036128 0 059045 872 864reficc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102020191017
1710636128 0 059045 872 864reficc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102020191017
1712236128 0 059045 872 864reficc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102020191017
1712636128 0 059045 872 864reficc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102020191017
1714032528 0 054189 872 864reficc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102020191017
1715032992 0 054597 872 864reficc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102020191017
210325732 0 025161 832 896refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102020191017
279545084 0 021764 824 896refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102020191017
305644054 0 019212 808 896refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102020191017
370605580 0 022145 832 896refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102020191017

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