1

Должен ли я использовать -march=nocona или -march=core2 при компиляции двоичных файлов для этого процессора с помощью gcc 4.3?

vendor_id       : GenuineIntel
cpu family      : 6
model           : 15
model name      : Intel(R) Xeon(R) CPU           X3220  @ 2.40GHz
stepping        : 8
cpuid level     : 10
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss syscall nx lm constant_tsc arch_perfmon pebs bts rep_good pni ssse3 cx16 lahf_lm

Я действительно не могу найти, если этот процессор уже архитектура Core2 ... Только найти информацию о четырехъядерных вариантах, но этот процессор только двухъядерный.

1 ответ1

2

-march = core2 должен быть правильным. Вы всегда можете сравнить код с каждым. Кроме того, вы можете обнаружить, что компилятор open64 может лучше оптимизировать ваш код. GCC хорош, потому что он работает на очень многих платформах, однако он не самый мощный, когда речь идет о создании супероптимизированного кода. Я предполагаю, что это действительно то, что вы собираетесь, иначе вы бы просто использовали i686 для арки.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .