Implementation notes: amd64, gpu, crypto_kem/bigquake1

Computer: gpu
Architecture: amd64
CPU ID: GenuineIntel-000206d7-bfebfbff
SUPERCOP version: 20190816
Operation: crypto_kem
Primitive: bigquake1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1107316550971 0 4471050 808 2064refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019100820190816
11981781? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019100820190816
12039450? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019100820190816
12251547? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019100820190816
12393579? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019100820190816
12396807? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019100820190816
12466677? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2019100820190816
13157481? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019100820190816
13455864? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019100820190816
17748714? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019100820190816
1861143650900 0 4474202 808 1744refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019100820190816
1869236750971 0 4471050 808 2064refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019100820190816
1870969550158 0 4472122 808 1744refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019100820190816
1871847950900 0 4474202 808 1744refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019100820190816
1881960350900 0 4474202 808 1744refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019100820190816
1885801554543 0 4475394 808 2064refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019100820190816
18937995? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019100820190816
1918151154543 0 4475394 808 2064refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019100820190816
19190631? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019100820190816
19222392? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019100820190816
19359018? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019100820190816
19568091? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019100820190816
19693026? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019100820190816
19703718? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019100820190816
19729935? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019100820190816
19918317? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019100820190816
20093595? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2019100820190816
20206119? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019100820190816
20228076? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019100820190816
20231427? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019100820190816
20269806? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019100820190816
20314596? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019100820190816
20345994? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019100820190816
20383152? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019100820190816
20423025? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019100820190816
20425971? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019100820190816
20433303? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019100820190816
20460222? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2019100820190816
20510457? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019100820190816
20533860? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019100820190816
20537001? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019100820190816
20766300? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019100820190816
20881599? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019100820190816
20892126? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019100820190816
20928141? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019100820190816
21186936? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019100820190816
21356685? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019100820190816
21640971? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2019100820190816
21891924? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019100820190816
22009008? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019100820190816
22241067? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019100820190816
22310619? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019100820190816
22454964? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2019100820190816
22590225? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019100820190816
22950303? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019100820190816
23562735? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019100820190816
24021492? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019100820190816
25440705? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019100820190816
25492491? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019100820190816
25756203? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019100820190816
26239353? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019100820190816
26616633? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019100820190816
27101829? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019100820190816
27157095? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2019100820190816
27177423? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019100820190816
28607538? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2019100820190816
28632252? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2019100820190816
28794963? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019100820190816
29285751? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019100820190816
29603253? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019100820190816
29776518? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2019100820190816
29786772? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019100820190816
29790825? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019100820190816
30075717? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019100820190816
30284757? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019100820190816
32771598? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019100820190816
33595701? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2019100820190816
35361618? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019100820190816
35441034? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019100820190816
35487960? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019100820190816
35518941? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019100820190816
35662731? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019100820190816
35718669? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2019100820190816
35767443? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019100820190816
35786295? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019100820190816
35844444? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019100820190816
35902275? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019100820190816
36408834? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2019100820190816
36584937? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2019100820190816
36859197? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2019100820190816
36861687? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019100820190816
37101048? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2019100820190816
37164699? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019100820190816
37169904? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019100820190816
37361055? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019100820190816
37365444? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019100820190816
37388151? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2019100820190816
37402083? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019100820190816
37477029? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019100820190816
37477563? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019100820190816
37492242? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019100820190816
37591962? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2019100820190816
37626486? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019100820190816
37647519? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019100820190816
37859661? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019100820190816
38013873? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019100820190816
38403924? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019100820190816
38562912? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019100820190816
39242094? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019100820190816
39761130? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2019100820190816
39831606? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2019100820190816
40060812? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019100820190816
75206655? ? ?? ? ?refgcc2019100820190816
111816297? ? ?? ? ?refcc2019100820190816
116554296? ? ?? ? ?refgcc_-funroll-loops2019100820190816

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