Implementation notes: amd64, gpu, crypto_kem/bigquake5

Computer: gpu
Architecture: amd64
CPU ID: GenuineIntel-000206d7-bfebfbff
SUPERCOP version: 20190816
Operation: crypto_kem
Primitive: bigquake5
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
104314818? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019100820190816
106893756? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019100820190816
109867344? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019100820190816
110993085? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019100820190816
110996118? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019100820190816
113758215? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019100820190816
118230963? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019100820190816
11843320251279 0 4474610 808 1744refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019100820190816
120159840? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019100820190816
121799727? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019100820190816
122180550? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019100820190816
122439114? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019100820190816
122938005? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019100820190816
123082062? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019100820190816
124190475? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019100820190816
124971306? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019100820190816
124976940? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019100820190816
125772582? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2019100820190816
129687282? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019100820190816
130903602? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2019100820190816
131279661? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2019100820190816
134364786? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019100820190816
136049037? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019100820190816
136512537? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019100820190816
141051357? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019100820190816
141118857? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019100820190816
143480463? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2019100820190816
143550936? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019100820190816
144079344? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019100820190816
144412659? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019100820190816
144630357? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2019100820190816
144974226? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2019100820190816
151986894? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2019100820190816
152051652? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019100820190816
152080233? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019100820190816
154292670? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019100820190816
155674197? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019100820190816
156939159? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019100820190816
157283799? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019100820190816
158893215? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019100820190816
160784796? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019100820190816
16129351555283 0 4475850 808 2064refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019100820190816
161433381? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019100820190816
161638266? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019100820190816
162062550? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2019100820190816
163543035? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019100820190816
164045832? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019100820190816
164268561? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019100820190816
16442712051279 0 4474610 808 1744refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019100820190816
164816235? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019100820190816
165323031? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2019100820190816
165516159? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019100820190816
166926219? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2019100820190816
167898264? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019100820190816
169262862? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019100820190816
170455128? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2019100820190816
171612951? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019100820190816
171971556? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019100820190816
172564974? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2019100820190816
17264576755283 0 4475850 808 2064refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019100820190816
172693293? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019100820190816
173899158? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019100820190816
174145767? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2019100820190816
175711548? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2019100820190816
175811292? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019100820190816
177448026? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019100820190816
179043378? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019100820190816
179575827? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019100820190816
18161054751279 0 4474610 808 1744refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019100820190816
181766877? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019100820190816
183488088? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019100820190816
183674976? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019100820190816
183725616? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019100820190816
183900807? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019100820190816
18430791350521 0 4472530 808 1744refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019100820190816
184605843? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019100820190816
185311305? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019100820190816
186044625? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019100820190816
18618759651623 0 4471570 808 2064refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019100820190816
187412742? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019100820190816
187474500? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019100820190816
188217111? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019100820190816
189812019? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019100820190816
190439652? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019100820190816
191125992? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019100820190816
191577024? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019100820190816
194991726? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019100820190816
198408036? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019100820190816
200016858? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019100820190816
200942883? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019100820190816
202478610? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2019100820190816
206295123? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019100820190816
207341160? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2019100820190816
207799275? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2019100820190816
208213692? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019100820190816
209252622? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019100820190816
210855747? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019100820190816
214080039? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2019100820190816
224229633? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019100820190816
22518542751623 0 4471570 808 2064refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019100820190816
232030728? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019100820190816
233343291? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019100820190816
238208709? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019100820190816
239708313? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019100820190816
240628032? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019100820190816
246278058? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019100820190816
249130374? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019100820190816
249402360? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019100820190816
264490035? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019100820190816
265851144? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019100820190816
284732211? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2019100820190816
318261687? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019100820190816
462481317? ? ?? ? ?refgcc_-funroll-loops2019100820190816
482968968? ? ?? ? ?refgcc2019100820190816
551772033? ? ?? ? ?refcc2019100820190816

Test failure

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

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

Compiler output

Implementation: ref
Security model: unknown
Compiler: cc
measure.c: /usr/bin/ld: /home/z/supercop/supercop-20190816/supercop-data/gpu/amd64/lib/fastrandombytes.o: relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
measure.c: /usr/bin/ld: final link failed: Nonrepresentable section on output
measure.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 103, namely:
CompilerImplementations
cc ref
gcc ref
gcc -O2 -fomit-frame-pointer ref
gcc -O3 -fomit-frame-pointer ref
gcc -O -fomit-frame-pointer ref
gcc -Os -fomit-frame-pointer ref
gcc -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc -fno-schedule-insns -O -fomit-frame-pointer ref
gcc -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc -funroll-loops ref
gcc -funroll-loops -O2 -fomit-frame-pointer ref
gcc -funroll-loops -O3 -fomit-frame-pointer ref
gcc -funroll-loops -O -fomit-frame-pointer ref
gcc -funroll-loops -Os -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer ref
gcc -m64 -O2 -fomit-frame-pointer ref
gcc -m64 -O3 -fomit-frame-pointer ref
gcc -m64 -O -fomit-frame-pointer ref
gcc -m64 -Os -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O -fomit-frame-pointer ref
gcc -m64 -march=corei7 -Os -fomit-frame-pointer ref
gcc -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc -m64 -march=k8 -O -fomit-frame-pointer ref
gcc -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer ref
gcc -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc -m64 -march=nocona -O -fomit-frame-pointer ref
gcc -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc -march=barcelona -O2 -fomit-frame-pointer ref
gcc -march=barcelona -O3 -fomit-frame-pointer ref
gcc -march=barcelona -O -fomit-frame-pointer ref
gcc -march=barcelona -Os -fomit-frame-pointer ref
gcc -march=k8 -O2 -fomit-frame-pointer ref
gcc -march=k8 -O3 -fomit-frame-pointer ref
gcc -march=k8 -O -fomit-frame-pointer ref
gcc -march=k8 -Os -fomit-frame-pointer ref
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv ref
gcc -march=nocona -O2 -fomit-frame-pointer ref
gcc -march=nocona -O3 -fomit-frame-pointer ref
gcc -march=nocona -O -fomit-frame-pointer ref
gcc -march=nocona -Os -fomit-frame-pointer ref

Compiler output

Implementation: ref
Security model: unknown
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
measure.c: /usr/bin/ld: /home/z/supercop/supercop-20190816/supercop-data/gpu/amd64/lib/fastrandombytes.o: relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
measure.c: /usr/bin/ld: final link failed: Nonrepresentable section on output
measure.c: collect2: error: ld returned 1 exit status
measure.c: /usr/bin/ld: /home/z/supercop/supercop-20190816/supercop-data/gpu/amd64/lib/fastrandombytes.o: relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
measure.c: /usr/bin/ld: final link failed: Nonrepresentable section on output
measure.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer ref
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer ref
gcc -m64 -march=barcelona -O -fomit-frame-pointer ref
gcc -m64 -march=barcelona -Os -fomit-frame-pointer ref