LINUX.ORG.RU

Оптимизация под i686


0

0

С какими флагами лучше всего собирать пакеты под сферический i686 в вакууме? Какие могут быть при этом грабли? Хочется сохранить вменяемую переносимость между современными процессорами и при этом получить от них что-то кроме тепла.

★★★★★

Ответ на: Re: Оптимизация под i686 от ovegio

Re: Оптимизация под i686

>i686 - далеко не современный процессор

Сейчас у меня все пакеты для пущей совместимости со слакой собраны под сферический i486. Да и это

ndtimofeev@slackhome:~$ cat /proc/cpuinfo
processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 15
model           : 47
model name      : AMD Athlon(tm) 64 Processor 3200+
stepping        : 2
cpu MHz         : 2010.270
cache size      : 512 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_optlm 3dnowext 3dnow up pni lahf_lm
bogomips        : 4020.54
clflush size    : 64
power management: ts fid vid ttp tm stc

далеко не современный процессор.

KblCb ★★★★★ ()
Ответ на: Re: Оптимизация под i686 от r0mik

Re: Оптимизация под i686

>-O3 -march=i686 -mtune=i686 -mmmx -fomit-frame-pointer

ой не надо так делать...

так лучше:

-O2 -march=i686 -mtune=i686 -mmmx -fomit-frame-pointer

sniper21 ★★★★★ ()
Ответ на: Re: Оптимизация под i686 от Sylvia

Re: Оптимизация под i686

Меня несколько смущает то что я понятия не имею зачем скажем нужен флаг -fomit-frame-pointer. Где можно поглядеть назначение флагов?

KblCb ★★★★★ ()
Ответ на: Re: Оптимизация под i686 от KblCb

Re: Оптимизация под i686

man gcc

-fomit-frame-pointer

дает выигрыш в производительности до 15% , за счет того что убирается счетчик,
отрицательное влияние в том что дебаг такой программы с помощью gdb будет значительно затруднен, для сборок релиз версий - очень желательно использовать этот флажок, если планируется дебаг - нет

Sylvia ★★★★★ ()
Ответ на: Re: Оптимизация под i686 от Sylvia

Re: Оптимизация под i686

>если под "сферический" современный процессор - то собирайте для pentium4+sse2

>-O2 -fomit-frame-pointer -march=pentium4 -mmmx -msse2 -mfpmath=sse

оптимизация под p4 подразумевает большие значения выравнивания (из-за особенностей оптимизации под длинный конвейер p4) - что лишь бесполезно раздует код, sse отсекает атлоны, sse2 - axp, -fomit-frame-pointer часто тоже лишь просто раздувает код. поэтому -O2 -march=i686 достаточно.

frame ★★★ ()
Ответ на: Re: Оптимизация под i686 от frame

Re: Оптимизация под i686

вот так и получается что когда майнтейнер пакета хочет собрать оптимизированый пакет под современный процессор для 32 бит, выходит что всё что реально можно использовать -O2 -march=i686 -fomit-frame-pointer
причем последний еще и не везде

Sylvia ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.