Подскажите оптимальный -march для AMD K8 при CHOST="i686-pc-linux-gnu"
Модератор: /dev/random
-
fat_angel
- Сообщения: 88
- ОС: ещё не определился
Подскажите оптимальный -march для AMD K8 при CHOST="i686-pc-linux-gnu"
Привет после чтения рекомендаций на различных форумах остановился на -march=k8, но в доке по GCC написано что этот ключ также как и amd64 предназначен для производства 64-битного кода (если не прав сильно не бейте), поэтому возникли сомнения действительно ли это оптимальный -march и не следует ли откатится до какого-нибудь k7 или athlon-mp?
-
JohnBat26
- Сообщения: 108
- ОС: Gentoo
Re: Подскажите оптимальный -march для AMD K8 при CHOST="i686-pc-linux-gnu"
fat_angel писал(а): ↑18.02.2008 21:19Привет после чтения рекомендаций на различных форумах остановился на -march=k8, но в доке по GCC написано что этот ключ также как и amd64 предназначен для производства 64-битного кода (если не прав сильно не бейте), поэтому возникли сомнения действительно ли это оптимальный -march и не следует ли откатится до какого-нибудь k7 или athlon-mp?
Если Вы используете компилятор версии 4.2.0 и выше, то вместо указания специфичного типа процессора,
необходимо указывать одно из двух (в параметрах: -march и -mtune):
1. generic: если Вы хотите, чтобы Ваш скомпилированный код запускался на
всех процессорах, архитектуры x86;
2. native: если Вы хотите оптимизировать код только для Вашего процессора. В
этом случае компилятор будет брать сведения о процессоре путем вызова
cpuid ! Т.е никаких nocona (для Core 2 Duo) или prescott (для последних
Intel Pentium 4 и т.п).
Также смотри наш Cборник статей о Gentoo !
Там есть примечания об этом !
Удачи !
Gentoo Linux x86-64 на DELL Inspiron 9400 Core 2 Duo T7200-2.0 /4048 /512/GF NV7900 256Mb/17"
-
fat_angel
- Сообщения: 88
- ОС: ещё не определился
Re: Подскажите оптимальный -march для AMD K8 при CHOST="i686-pc-linux-gnu"
Спасибо за отклик! Про GCC 4.2.0 конечно читал, но как я понимаю он доступен только в ~x86, а я всетаки предпочитаю стабильную ветку и сижу на GCC 4.1.2, поэтому и задал этот вопрос.
П.С. За сборник статей отдельное спасибо!!!
П.С. За сборник статей отдельное спасибо!!!
-
Eraser
- Сообщения: 224
- ОС: Gentoo Linux
Re: Подскажите оптимальный -march для AMD K8 при CHOST="i686-pc-linux-gnu"
Если Вы используете компилятор версии 4.2.0 и выше, то вместо указания специфичного типа процессора,
необходимо указывать одно из двух (в параметрах: -march и -mtune):
1. generic: если Вы хотите, чтобы Ваш скомпилированный код запускался на
всех процессорах, архитектуры x86;
2. native: если Вы хотите оптимизировать код только для Вашего процессора. В
этом случае компилятор будет брать сведения о процессоре путем вызова
cpuid ! Т.е никаких nocona (для Core 2 Duo) или prescott (для последних
Intel Pentium 4 и т.п).
Тип процессора можно указывать. Никто этого пока не отменял. Просто добавлена возможность указать native, чтобы gcc сам определил, что у вас за процессор.
-
JohnBat26
- Сообщения: 108
- ОС: Gentoo
Re: Подскажите оптимальный -march для AMD K8 при CHOST="i686-pc-linux-gnu"
Вот флаги для GCC 4.1.2:
Типы процессоров для GCC 4.1.2
Eraser писал(а): ↑19.02.2008 14:04Если Вы используете компилятор версии 4.2.0 и выше, то вместо указания специфичного типа процессора,
необходимо указывать одно из двух (в параметрах: -march и -mtune):
1. generic: если Вы хотите, чтобы Ваш скомпилированный код запускался на
всех процессорах, архитектуры x86;
2. native: если Вы хотите оптимизировать код только для Вашего процессора. В
этом случае компилятор будет брать сведения о процессоре путем вызова
cpuid ! Т.е никаких nocona (для Core 2 Duo) или prescott (для последних
Intel Pentium 4 и т.п).
Тип процессора можно указывать. Никто этого пока не отменял. Просто добавлена возможность указать native, чтобы gcc сам определил, что у вас за процессор.
Но, IHMO, указывать native на порядок удобнее !
Gentoo Linux x86-64 на DELL Inspiron 9400 Core 2 Duo T7200-2.0 /4048 /512/GF NV7900 256Mb/17"
-
Eraser
- Сообщения: 224
- ОС: Gentoo Linux
Re: Подскажите оптимальный -march для AMD K8 при CHOST="i686-pc-linux-gnu"
http://gcc.gnu.org/onlinedocs/gcc-4.2.3/gc..._002d64-Options
Только для некоторых процессоров.
Мой celeron может запросто определиться и как pentium3 и как pentium4
Но, IHMO, указывать native на порядок удобнее !
Только для некоторых процессоров.
Мой celeron может запросто определиться и как pentium3 и как pentium4
-
JohnBat26
- Сообщения: 108
- ОС: Gentoo
Re: Подскажите оптимальный -march для AMD K8 при CHOST="i686-pc-linux-gnu"
Eraser писал(а): ↑19.02.2008 14:18http://gcc.gnu.org/onlinedocs/gcc-4.2.3/gc..._002d64-Options
Но, IHMO, указывать native на порядок удобнее !
Только для некоторых процессоров.
Мой celeron может запросто определиться и как pentium3 и как pentium4
Ок, внесу коррективы в версию книги 1.5
Gentoo Linux x86-64 на DELL Inspiron 9400 Core 2 Duo T7200-2.0 /4048 /512/GF NV7900 256Mb/17"