Implementation notes: x86, gpu, crypto_hash/essence384

Computer: gpu
Architecture: x86
CPU ID: GenuineIntel-000206d7-bfebfbff
SUPERCOP version: 20190816
Operation: crypto_hash
Primitive: essence384
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
11700827407 3168 042630 3588 744gccgcc_-m32_-march=corei7-avx_-O3_-fomit-frame-pointer2019082220190816
11896827407 3168 042630 3588 744gccgcc_-m32_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019082220190816
12192431801 3168 046738 3588 744gccgcc_-m32_-march=core2_-msse4_-O3_-fomit-frame-pointer2019082220190816
12602027407 3168 042630 3588 744gccgcc_-m32_-march=core-avx-i_-O3_-fomit-frame-pointer2019082220190816
13271231801 3168 046658 3588 744gccgcc_-m32_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019082220190816
13522831964 3168 046898 3588 744gccgcc_-m32_-march=core2_-O3_-fomit-frame-pointer2019082220190816
13799641026 3168 058564 3580 744gccgcc_-funroll-loops_-m32_-march=pentium-m_-O3_-fomit-frame-pointer2019082220190816
13875222575 3168 038368 3580 744gccgcc_-funroll-loops_-m32_-march=k8_-O_-fomit-frame-pointer2019082220190816
13993634918 3168 050440 3580 744gccgcc_-m32_-march=pentium-m_-O3_-fomit-frame-pointer2019082220190816
14034423319 3168 039192 3580 744gccgcc_-funroll-loops_-m32_-march=prescott_-O_-fomit-frame-pointer2019082220190816
14035231790 3168 046722 3588 744gccgcc_-m32_-march=corei7_-O3_-fomit-frame-pointer2019082220190816
14113622240 3168 038104 3580 744gccgcc_-funroll-loops_-m32_-march=pentium-m_-O_-fomit-frame-pointer2019082220190816
14463622715 3168 038632 3580 744gccgcc_-funroll-loops_-m32_-march=pentium4_-O_-fomit-frame-pointer2019082220190816
14846811793 3168 022880 3572 744gccgcc_-m32_-march=core-avx-i_-Os_-fomit-frame-pointer2019082220190816
14861625498 3168 041736 3580 744gccgcc_-funroll-loops_-m32_-march=pentium-m_-O2_-fomit-frame-pointer2019082220190816
14912811793 3168 022880 3572 744gccgcc_-m32_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019082220190816
14930423319 3168 039192 3580 744gccgcc_-funroll-loops_-m32_-march=nocona_-O_-fomit-frame-pointer2019082220190816
14968835042 3168 051061 3584 744gccgcc_-funroll-loops_-m32_-march=pentium4_-O3_-fomit-frame-pointer2019082220190816
14972831721 3168 046361 3584 744gccgcc_-m32_-march=pentium4_-O3_-fomit-frame-pointer2019082220190816
15312813778 3168 026101 3584 744gccgcc_-m32_-march=core2_-O2_-fomit-frame-pointer2019082220190816
15354012470 3168 024532 3580 744gccgcc_-m32_-march=pentium-m_-O_-fomit-frame-pointer2019082220190816
15488412654 3168 024629 3584 744gccgcc_-m32_-march=core-avx-i_-O_-fomit-frame-pointer2019082220190816
15501223156 3168 038484 3580 744gccgcc_-funroll-loops_-m32_-march=pentium4_-O2_-fomit-frame-pointer2019082220190816
15537611664 3168 022752 3572 744gccgcc_-m32_-march=core2_-msse4_-Os_-fomit-frame-pointer2019082220190816
15855012891 3168 024848 3580 744gccgcc_-m32_-march=prescott_-O2_-fomit-frame-pointer2019082220190816
15928414412 3168 026956 3580 744gccgcc_-m32_-march=pentium-m_-O2_-fomit-frame-pointer2019082220190816
16046813634 3168 025941 3584 744gccgcc_-m32_-march=core2_-msse4_-O2_-fomit-frame-pointer2019082220190816
16055612654 3168 024629 3584 744gccgcc_-m32_-march=corei7-avx_-O_-fomit-frame-pointer2019082220190816
16181223835 3168 039260 3580 744gccgcc_-funroll-loops_-m32_-march=prescott_-O2_-fomit-frame-pointer2019082220190816
16202423835 3168 039260 3580 744gccgcc_-funroll-loops_-m32_-march=nocona_-O2_-fomit-frame-pointer2019082220190816
16269211747 3168 022832 3572 744gccgcc_-m32_-march=corei7_-Os_-fomit-frame-pointer2019082220190816
16292813434 3168 025733 3584 744gccgcc_-m32_-march=corei7-avx_-O2_-fomit-frame-pointer2019082220190816
16304412780 3168 024757 3584 744gccgcc_-m32_-march=corei7_-O_-fomit-frame-pointer2019082220190816
16372412869 3168 024853 3584 744gccgcc_-m32_-march=core2_-msse4_-O_-fomit-frame-pointer2019082220190816
16373611793 3168 022880 3572 744gccgcc_-m32_-march=corei7-avx_-Os_-fomit-frame-pointer2019082220190816
16432413610 3168 025925 3584 744gccgcc_-m32_-march=corei7_-O2_-fomit-frame-pointer2019082220190816
16448012937 3168 024896 3580 744gccgcc_-m32_-march=pentium4_-O2_-fomit-frame-pointer2019082220190816
16529211944 3168 023044 3572 744gccgcc_-m32_-march=core2_-Os_-fomit-frame-pointer2019082220190816
16610413434 3168 025733 3584 744gccgcc_-m32_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019082220190816
16669213434 3168 025733 3584 744gccgcc_-m32_-march=core-avx-i_-O2_-fomit-frame-pointer2019082220190816
16689236033 3168 052117 3584 744gccgcc_-funroll-loops_-m32_-march=prescott_-O3_-fomit-frame-pointer2019082220190816
16718811664 3168 022752 3572 744gccgcc_-m32_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019082220190816
16927612499 3168 024588 3580 744gccgcc_-m32_-march=pentium4_-O_-fomit-frame-pointer2019082220190816
16988411925 3168 022956 3572 744gccgcc_-funroll-loops_-m32_-march=pentium-m_-Os_-fomit-frame-pointer2019082220190816
16994812898 3168 024885 3584 744gccgcc_-m32_-march=core2_-O_-fomit-frame-pointer2019082220190816
17048812598 3168 024664 3580 744gccgcc_-m32_-march=prescott_-O_-fomit-frame-pointer2019082220190816
17068811941 3168 023044 3572 744gccgcc_-m32_-march=pentium4_-Os_-fomit-frame-pointer2019082220190816
17084013634 3168 025941 3584 744gccgcc_-m32_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019082220190816
17233625454 6336 024808 3580 744gccgcc_-m32_-march=barcelona_-O_-fomit-frame-pointer2019082220190816
17354022671 3168 038500 3580 744gccgcc_-funroll-loops_-m32_-march=barcelona_-O_-fomit-frame-pointer2019082220190816
17427611941 3168 023044 3572 744gccgcc_-m32_-march=prescott_-Os_-fomit-frame-pointer2019082220190816
17521636033 3168 052117 3584 744gccgcc_-funroll-loops_-m32_-march=nocona_-O3_-fomit-frame-pointer2019082220190816
17536432151 3168 046857 3584 744gccgcc_-m32_-march=nocona_-O3_-fomit-frame-pointer2019082220190816
17551211929 3168 023012 3572 744gccgcc_-funroll-loops_-m32_-march=pentium4_-Os_-fomit-frame-pointer2019082220190816
17683612654 3168 024629 3584 744gccgcc_-m32_-march=native_-mtune=native_-O_-fomit-frame-pointer2019082220190816
17739611929 3168 023012 3572 744gccgcc_-funroll-loops_-m32_-march=nocona_-Os_-fomit-frame-pointer2019082220190816
17806812869 3168 024853 3584 744gccgcc_-m32_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019082220190816
17894432151 3168 046857 3584 744gccgcc_-m32_-march=prescott_-O3_-fomit-frame-pointer2019082220190816
17995211929 3168 023012 3572 744gccgcc_-funroll-loops_-m32_-march=prescott_-Os_-fomit-frame-pointer2019082220190816
18041611941 3168 023044 3572 744gccgcc_-m32_-march=nocona_-Os_-fomit-frame-pointer2019082220190816
18556011932 3168 022988 3572 744gccgcc_-m32_-march=pentium-m_-Os_-fomit-frame-pointer2019082220190816
18846412891 3168 024848 3580 744gccgcc_-m32_-march=nocona_-O2_-fomit-frame-pointer2019082220190816
19150412014 3168 023096 3572 744gccgcc_-funroll-loops_-m32_-march=barcelona_-Os_-fomit-frame-pointer2019082220190816
19248033053 3168 048541 3584 744gccgcc_-m32_-march=k8_-O3_-fomit-frame-pointer2019082220190816
19835612598 3168 024664 3580 744gccgcc_-m32_-march=nocona_-O_-fomit-frame-pointer2019082220190816
20058412620 3168 024560 3580 744gccgcc_-m32_-march=k8_-O_-fomit-frame-pointer2019082220190816
20248836505 3168 054129 3584 744gccgcc_-funroll-loops_-m32_-march=k8_-O3_-fomit-frame-pointer2019082220190816
20255224083 3168 039592 3580 744gccgcc_-funroll-loops_-m32_-march=k8_-O2_-fomit-frame-pointer2019082220190816
21422024050 6336 023128 3572 744gccgcc_-m32_-march=barcelona_-Os_-fomit-frame-pointer2019082220190816
21495612163 3168 023256 3572 744gccgcc_-funroll-loops_-m32_-march=k8_-Os_-fomit-frame-pointer2019082220190816
22052012164 3168 023272 3572 744gccgcc_-m32_-march=k8_-Os_-fomit-frame-pointer2019082220190816
23104013597 3168 025896 3580 744gccgcc_-m32_-march=k8_-O2_-fomit-frame-pointer2019082220190816
41993231034 6336 028604 3580 744gccgcc_-m32_-march=barcelona_-O2_-fomit-frame-pointer2019082220190816
43724870696 6336 050977 3584 744gccgcc_-m32_-march=barcelona_-O3_-fomit-frame-pointer2019082220190816
44375239064 3168 057073 3584 744gccgcc_-funroll-loops_-m32_-march=barcelona_-O3_-fomit-frame-pointer2019082220190816
44598425762 3168 041996 3580 744gccgcc_-funroll-loops_-m32_-march=barcelona_-O2_-fomit-frame-pointer2019082220190816
62756435248 3168 050845 3584 744gccgcc_-funroll-loops_-m32_-O_-fomit-frame-pointer2019082220190816
63064435203 3168 050745 3584 744gccgcc_-funroll-loops_-m32_-march=athlon_-O_-fomit-frame-pointer2019082220190816
63243234735 3168 050353 3584 744gccgcc_-funroll-loops_-m32_-march=pentium_-O_-fomit-frame-pointer2019082220190816
64689234735 3168 050353 3584 744gccgcc_-funroll-loops_-m32_-march=pentium-mmx_-O_-fomit-frame-pointer2019082220190816
65690826075 3168 038060 3580 744gccgcc_-m32_-march=pentium2_-O_-fomit-frame-pointer2019082220190816
66671627266 3168 039553 3584 744gccgcc_-m32_-O2_-fomit-frame-pointer2019082220190816
67873226531 3168 038481 3584 744gccgcc_-m32_-march=pentium_-O_-fomit-frame-pointer2019082220190816
68703626531 3168 038481 3584 744gccgcc_-m32_-march=pentium-mmx_-O_-fomit-frame-pointer2019082220190816
68972034633 3168 050416 3580 744gccgcc_-funroll-loops_-m32_-march=pentium2_-O_-fomit-frame-pointer2019082220190816
70040046581 3168 063529 3584 744gccgcc_-funroll-loops_-m32_-march=pentium-mmx_-O3_-fomit-frame-pointer2019082220190816
71471240860 3168 056056 3580 744gccgcc_-m32_-march=pentium2_-O3_-fomit-frame-pointer2019082220190816
71613243479 3168 058342 3588 744gccgcc_-m32_-O3_-fomit-frame-pointer2019082220190816
72387626075 3168 038060 3580 744gccgcc_-m32_-march=pentiumpro_-O_-fomit-frame-pointer2019082220190816
72902446581 3168 063529 3584 744gccgcc_-funroll-loops_-m32_-march=pentium_-O3_-fomit-frame-pointer2019082220190816
73120434633 3168 050416 3580 744gccgcc_-funroll-loops_-m32_-march=pentiumpro_-O_-fomit-frame-pointer2019082220190816
73420027570 3168 039876 3580 744gccgcc_-m32_-march=pentium2_-O2_-fomit-frame-pointer2019082220190816
73444827570 3168 039876 3580 744gccgcc_-m32_-march=pentiumpro_-O2_-fomit-frame-pointer2019082220190816
73863626100 3168 037881 3584 744gccgcc_-m32_-march=athlon_-O_-fomit-frame-pointer2019082220190816
73979645748 3168 063304 3580 744gccgcc_-funroll-loops_-m32_-march=pentiumpro_-O3_-fomit-frame-pointer2019082220190816
74310836969 3168 052556 3580 744gccgcc_-funroll-loops_-m32_-march=pentium2_-O2_-fomit-frame-pointer2019082220190816
74635244015 3168 059461 3584 744gccgcc_-m32_-march=pentium-mmx_-O3_-fomit-frame-pointer2019082220190816
75700037460 3168 053317 3584 744gccgcc_-funroll-loops_-m32_-march=pentium-mmx_-O2_-fomit-frame-pointer2019082220190816
75883637242 3168 052905 3584 744gccgcc_-funroll-loops_-m32_-O2_-fomit-frame-pointer2019082220190816
75992846263 3168 063070 3588 744gccgcc_-funroll-loops_-m32_-O3_-fomit-frame-pointer2019082220190816
76147626336 3168 038273 3584 744gccgcc_-m32_-O_-fomit-frame-pointer2019082220190816
76169245748 3168 063304 3580 744gccgcc_-funroll-loops_-m32_-march=pentium2_-O3_-fomit-frame-pointer2019082220190816
77438837460 3168 053317 3584 744gccgcc_-funroll-loops_-m32_-march=pentium_-O2_-fomit-frame-pointer2019082220190816
77560036969 3168 052556 3580 744gccgcc_-funroll-loops_-m32_-march=pentiumpro_-O2_-fomit-frame-pointer2019082220190816
78182044015 3168 059461 3584 744gccgcc_-m32_-march=pentium_-O3_-fomit-frame-pointer2019082220190816
78352827818 3168 040145 3584 744gccgcc_-m32_-march=pentium-mmx_-O2_-fomit-frame-pointer2019082220190816
78888845558 3168 062650 3588 744gccgcc_-funroll-loops_-m32_-march=athlon_-O3_-fomit-frame-pointer2019082220190816
83272840860 3168 056056 3580 744gccgcc_-m32_-march=pentiumpro_-O3_-fomit-frame-pointer2019082220190816
85853626696 3168 038761 3584 744gccgcc_-m32_-march=athlon_-O2_-fomit-frame-pointer2019082220190816
90127243470 3168 058318 3588 744gccgcc_-m32_-march=athlon_-O3_-fomit-frame-pointer2019082220190816
91298837105 3168 052613 3584 744gccgcc_-funroll-loops_-m32_-march=athlon_-O2_-fomit-frame-pointer2019082220190816
94690427818 3168 040145 3584 744gccgcc_-m32_-march=pentium_-O2_-fomit-frame-pointer2019082220190816
101295218414 3168 029420 3572 744gccgcc_-funroll-loops_-m32_-march=pentium3_-Os_-fomit-frame-pointer2019082220190816
102502044702 3168 062412 3580 744gccgcc_-funroll-loops_-m32_-march=pentium3_-O3_-fomit-frame-pointer2019082220190816
110294419954 3168 032256 3580 744gccgcc_-m32_-march=pentium3_-O2_-fomit-frame-pointer2019082220190816
113029239930 3168 055280 3580 744gccgcc_-m32_-march=pentium3_-O3_-fomit-frame-pointer2019082220190816
114386830730 3168 046508 3580 744gccgcc_-funroll-loops_-m32_-march=pentium3_-O_-fomit-frame-pointer2019082220190816
114590818410 3168 029436 3572 744gccgcc_-m32_-march=pentium3_-Os_-fomit-frame-pointer2019082220190816
116152031863 3168 047464 3580 744gccgcc_-funroll-loops_-m32_-march=pentium3_-O2_-fomit-frame-pointer2019082220190816
120731218604 3168 030600 3580 744gccgcc_-m32_-march=pentium3_-O_-fomit-frame-pointer2019082220190816
162225234136 3168 049856 3580 744gccgcc_-funroll-loops_-m32_-march=i486_-O_-fomit-frame-pointer2019082220190816
199970424213 3168 035232 3572 744gccgcc_-funroll-loops_-m32_-march=pentium2_-Os_-fomit-frame-pointer2019082220190816
210456825811 3168 037913 3584 744gccgcc_-m32_-march=k6-2_-O_-fomit-frame-pointer2019082220190816
213054444591 3168 060238 3588 744gccgcc_-m32_-march=k6-3_-O3_-fomit-frame-pointer2019082220190816
217084025595 3168 037372 3580 744gccgcc_-m32_-march=i386_-O_-fomit-frame-pointer2019082220190816
230034434587 3168 050209 3584 744gccgcc_-funroll-loops_-m32_-march=k6_-O_-fomit-frame-pointer2019082220190816
230965837251 3168 052432 3580 744gccgcc_-funroll-loops_-m32_-march=i386_-O2_-fomit-frame-pointer2019082220190816
232330424692 3168 035784 3572 744gccgcc_-m32_-march=pentium-mmx_-Os_-fomit-frame-pointer2019082220190816
234259629090 3168 041701 3584 744gccgcc_-m32_-march=k6_-O2_-fomit-frame-pointer2019082220190816
234651625811 3168 037913 3584 744gccgcc_-m32_-march=k6-3_-O_-fomit-frame-pointer2019082220190816
238443224312 3168 035368 3572 744gccgcc_-funroll-loops_-m32_-march=pentium-mmx_-Os_-fomit-frame-pointer2019082220190816
239142844591 3168 060238 3588 744gccgcc_-m32_-march=k6-2_-O3_-fomit-frame-pointer2019082220190816
242134424431 3168 035592 3572 744gccgcc_-funroll-loops_-m32_-march=k6-3_-Os_-fomit-frame-pointer2019082220190816
242581237501 3168 053149 3584 744gccgcc_-funroll-loops_-m32_-march=k6-3_-O2_-fomit-frame-pointer2019082220190816
243736834132 3168 049516 3580 744gccgcc_-funroll-loops_-m32_-march=i386_-O_-fomit-frame-pointer2019082220190816
244280446537 3168 063262 3588 744gccgcc_-funroll-loops_-m32_-march=k6_-O3_-fomit-frame-pointer2019082220190816
244856424334 3168 035400 3572 744gccgcc_-funroll-loops_-m32_-march=i386_-Os_-fomit-frame-pointer2019082220190816
245554824315 3168 035384 3572 744gccgcc_-funroll-loops_-m32_-Os_-fomit-frame-pointer2019082220190816
245986034587 3168 050209 3584 744gccgcc_-funroll-loops_-m32_-march=k6-2_-O_-fomit-frame-pointer2019082220190816
246789224312 3168 035368 3572 744gccgcc_-funroll-loops_-m32_-march=pentium_-Os_-fomit-frame-pointer2019082220190816
247115624699 3168 035784 3572 744gccgcc_-m32_-Os_-fomit-frame-pointer2019082220190816
247710424213 3168 035232 3572 744gccgcc_-funroll-loops_-m32_-march=pentiumpro_-Os_-fomit-frame-pointer2019082220190816
248495225811 3168 037913 3584 744gccgcc_-m32_-march=k6_-O_-fomit-frame-pointer2019082220190816
248916437501 3168 053149 3584 744gccgcc_-funroll-loops_-m32_-march=k6_-O2_-fomit-frame-pointer2019082220190816
250691646537 3168 063870 3588 744gccgcc_-funroll-loops_-m32_-march=k6-3_-O3_-fomit-frame-pointer2019082220190816
253566424315 3168 035384 3572 744gccgcc_-funroll-loops_-m32_-march=athlon_-Os_-fomit-frame-pointer2019082220190816
253668424580 3168 035616 3572 744gccgcc_-m32_-march=pentium2_-Os_-fomit-frame-pointer2019082220190816
255088846316 3168 062656 3580 744gccgcc_-funroll-loops_-m32_-march=i486_-O3_-fomit-frame-pointer2019082220190816
255227234587 3168 050209 3584 744gccgcc_-funroll-loops_-m32_-march=k6-3_-O_-fomit-frame-pointer2019082220190816
256123224431 3168 035592 3572 744gccgcc_-funroll-loops_-m32_-march=k6_-Os_-fomit-frame-pointer2019082220190816
260036445375 3168 060556 3580 744gccgcc_-funroll-loops_-m32_-march=i386_-O3_-fomit-frame-pointer2019082220190816
260570424692 3168 035784 3572 744gccgcc_-m32_-march=pentium_-Os_-fomit-frame-pointer2019082220190816
260985224334 3168 035400 3572 744gccgcc_-funroll-loops_-m32_-march=i486_-Os_-fomit-frame-pointer2019082220190816
262055624810 3168 035992 3572 744gccgcc_-m32_-march=k6-3_-Os_-fomit-frame-pointer2019082220190816
262266844289 3168 059196 3580 744gccgcc_-m32_-march=i486_-O3_-fomit-frame-pointer2019082220190816
262548824580 3168 035616 3572 744gccgcc_-m32_-march=pentiumpro_-Os_-fomit-frame-pointer2019082220190816
262843629090 3168 041701 3584 744gccgcc_-m32_-march=k6-3_-O2_-fomit-frame-pointer2019082220190816
263502843427 3168 057172 3580 744gccgcc_-m32_-march=i386_-O3_-fomit-frame-pointer2019082220190816
264351244591 3168 060046 3588 744gccgcc_-m32_-march=k6_-O3_-fomit-frame-pointer2019082220190816
265562824810 3168 035992 3572 744gccgcc_-m32_-march=k6-2_-Os_-fomit-frame-pointer2019082220190816
266986024810 3168 035992 3572 744gccgcc_-m32_-march=k6_-Os_-fomit-frame-pointer2019082220190816
268656437501 3168 053149 3584 744gccgcc_-funroll-loops_-m32_-march=k6-2_-O2_-fomit-frame-pointer2019082220190816
270226437594 3168 053604 3580 744gccgcc_-funroll-loops_-m32_-march=i486_-O2_-fomit-frame-pointer2019082220190816
271678424712 3168 035800 3572 744gccgcc_-m32_-march=i486_-Os_-fomit-frame-pointer2019082220190816
274062425599 3168 037664 3580 744gccgcc_-m32_-march=i486_-O_-fomit-frame-pointer2019082220190816
278212824699 3168 035784 3572 744gccgcc_-m32_-march=athlon_-Os_-fomit-frame-pointer2019082220190816
278835246537 3168 063870 3588 744gccgcc_-funroll-loops_-m32_-march=k6-2_-O3_-fomit-frame-pointer2019082220190816
285910424431 3168 035592 3572 744gccgcc_-funroll-loops_-m32_-march=k6-2_-Os_-fomit-frame-pointer2019082220190816
286321629090 3168 041701 3584 744gccgcc_-m32_-march=k6-2_-O2_-fomit-frame-pointer2019082220190816
286486028344 3168 040164 3580 744gccgcc_-m32_-march=i386_-O2_-fomit-frame-pointer2019082220190816
287352029092 3168 041652 3580 744gccgcc_-m32_-march=i486_-O2_-fomit-frame-pointer2019082220190816
288421224712 3168 035800 3572 744gccgcc_-m32_-march=i386_-Os_-fomit-frame-pointer2019082220190816

Test failure

Implementation: gcc
Security model: unknown
Compiler: gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer gcc
gcc -m32 -march=core-avx2 -O -fomit-frame-pointer gcc
gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer gcc