View previous topic :: View next topic |
Author |
Message |
Rasputin Tux's lil' helper
Joined: 10 Dec 2003 Posts: 109 Location: Ukraine
|
Posted: Tue Jan 13, 2004 1:34 pm Post subject: Cоветы: флаги компиляции CFLAGS и CXXFL |
|
|
База флагов оптимизации CHOST, CFLAGS, CXXFLAGS.
Предлагаю на этом посте всем оставлять свои заметки и разьяснения своих настроек в целях ознакомления и дальнейшего использования флагов оптимизации.
С Вашего позволения я начну:
CPU Duron 1100 Mhz 512
CHOST="i686-pc-linux-gnu"
CFLAGS="-Os -march=athlon -mcpu=athlon -fomit-frame-pointer -funroll-loops -ffast-math -fprefetch-loop-arrays -msse -m3dnow -mfpmath=sse,387 -pipe"
CXXFLAGS=${CFLAGS}
Если Вам не жалко прошу делитесь... _________________ Many receive advice, only the wise profit by it.
Last edited by Rasputin on Thu Jan 15, 2004 10:36 am; edited 3 times in total |
|
Back to top |
|
|
except n00b
Joined: 10 Jan 2004 Posts: 3
|
|
Back to top |
|
|
Rasputin Tux's lil' helper
Joined: 10 Dec 2003 Posts: 109 Location: Ukraine
|
|
Back to top |
|
|
Bash[DevNull] Guru
Joined: 10 Oct 2003 Posts: 333
|
Posted: Thu Jan 15, 2004 12:18 pm Post subject: Re: Cоветы: флаги компиляции CFLAGS и C |
|
|
Rasputin wrote: | База флагов оптимизации CHOST, CFLAGS, CXXFLAGS.
Предлагаю на этом посте всем оставлять свои заметки и разьяснения своих настроек в целях ознакомления и дальнейшего использования флагов оптимизации.
С Вашего позволения я начну:
CPU Duron 1100 Mhz 512
CHOST="i686-pc-linux-gnu"
CFLAGS="-Os -march=athlon -mcpu=athlon -fomit-frame-pointer -funroll-loops -ffast-math -fprefetch-loop-arrays -msse -m3dnow -mfpmath=sse,387 -pipe"
CXXFLAGS=${CFLAGS}
Если Вам не жалко прошу делитесь... |
Ну а смысл? Ты лучше расскажи, что каждый флаг в теории делает, как это сказываеться на софте, какие приросты произовдительности. С цифрами желательно. А если ты прописал какую-то умную строчку в make.conf, не понял, что она значит, ничего не изменилось, то смысл это нести миру? _________________ Biomechanical Artificial Sabotage Humanoid |
|
Back to top |
|
|
Zoltan Guru
Joined: 27 Aug 2003 Posts: 394 Location: Moscow, Russia
|
Posted: Thu Jan 15, 2004 2:01 pm Post subject: Re: Cоветы: флаги компиляции CFLAGS и C |
|
|
Rasputin wrote: | CFLAGS="-Os -march=athlon -mcpu=athlon -fomit-frame-pointer -funroll-loops -ffast-math -fprefetch-loop-arrays -msse -m3dnow -mfpmath=sse,387 -pipe"
CXXFLAGS=${CFLAGS}
|
Rasputin, у дюрона нету SSE (его нету и у атлонов до athlon-xp), убери -msse и -mfpmath=sse,387 а то рано или поздно получишь SIGILL - Illegal Instruction, который происходит когда процессор не может исполнить инструкцию, потому что ее у него нет. _________________ Light travels faster than sound. That's why some people appear bright before you hear them speak. |
|
Back to top |
|
|
Rasputin Tux's lil' helper
Joined: 10 Dec 2003 Posts: 109 Location: Ukraine
|
Posted: Thu Jan 15, 2004 2:31 pm Post subject: |
|
|
2 Zoltan:
Code: | # cat /proc/cpuinfo
processor : 0
vendor_id : AuthenticAMD
cpu family : 6
model : 7
model name : AMD Duron(tm) Processor
stepping : 1
cpu MHz : 1113.741
cache size : 64 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 tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr sse syscall mmxext 3dnowext 3dnow
bogomips : 2292.28 |
Тогда это что? _________________ Many receive advice, only the wise profit by it. |
|
Back to top |
|
|
Bash[DevNull] Guru
Joined: 10 Oct 2003 Posts: 333
|
Posted: Thu Jan 15, 2004 2:40 pm Post subject: |
|
|
Имхо это просто заглушки на процессоре, чтобы не было совсем часто сигментайшн файлров _________________ Biomechanical Artificial Sabotage Humanoid |
|
Back to top |
|
|
Rasputin Tux's lil' helper
Joined: 10 Dec 2003 Posts: 109 Location: Ukraine
|
Posted: Thu Jan 15, 2004 3:11 pm Post subject: |
|
|
Тогда получается у меня sse не поддерживается? АбиднА
А mmx и 3dnow? _________________ Many receive advice, only the wise profit by it. |
|
Back to top |
|
|
Zoltan Guru
Joined: 27 Aug 2003 Posts: 394 Location: Moscow, Russia
|
Posted: Thu Jan 15, 2004 3:36 pm Post subject: |
|
|
Хмм, интересно. Может и правда есть SSE, я про дюроны плохо знаю. Если /proc/cpuinfo показывает что есть, значит скорее всего есть
Только как проверить я точно не скажу, я знаю только один пакет, который точно использует SEE, это mplayer. Но для него как правило нужны иксы. _________________ Light travels faster than sound. That's why some people appear bright before you hear them speak. |
|
Back to top |
|
|
Bash[DevNull] Guru
Joined: 10 Oct 2003 Posts: 333
|
Posted: Thu Jan 15, 2004 4:26 pm Post subject: |
|
|
Rasputin wrote: | Тогда получается у меня sse не поддерживается? АбиднА
А mmx и 3dnow? |
Ну 3DNow должно поддерживаться, это же AMD'шная фишка. _________________ Biomechanical Artificial Sabotage Humanoid |
|
Back to top |
|
|
Bash[DevNull] Guru
Joined: 10 Oct 2003 Posts: 333
|
Posted: Thu Jan 15, 2004 4:45 pm Post subject: |
|
|
Zoltan wrote: | Хмм, интересно. Может и правда есть SSE, я про дюроны плохо знаю. Если /proc/cpuinfo показывает что есть, значит скорее всего есть
Только как проверить я точно не скажу, я знаю только один пакет, который точно использует SEE, это mplayer. Но для него как правило нужны иксы. |
Ну я не уверен, что можно верить cpuinfo. Вот на мой PIV там показываеться, что есть ГиперТрединг, а у меня его нету :-/
Для mplayer'а совсем не обязательны иксы.
А если интересен список приложений, которые используют SSE, то вот он
dev-libs/fftw/fftw
dev-libs/DirectFB/DirectFB
games-emulation/mupen64/mupen64
media-gfx/gimp/gimp-1.3
media-gfx/gimp/gimp-2.0
media-libs/libfame/libfame
media-libs/flac/flac
media-libs/speex/speex
media-libs/mesa-glu/mesa-glu
media-libs/libvorbis/libvorbis
media-libs/allegro/allegro
media-libs/mesa/mesa
media-sound/fluidsynth/fluidsynth
media-video/transcode/transcode
media-video/fame/fame
media-video/recmpeg/recmpeg
media-video/mplayer/mplayer
media-video/avifile/avifile
x11-base/kdrive/kdrive
x11-base/xfree/xfree
x11-libs/evas/evas
x11-misc/rss-glx/rss-glx _________________ Biomechanical Artificial Sabotage Humanoid |
|
Back to top |
|
|
Zoltan Guru
Joined: 27 Aug 2003 Posts: 394 Location: Moscow, Russia
|
Posted: Thu Jan 15, 2004 4:58 pm Post subject: |
|
|
Bash[DevNull] wrote: | Ну я не уверен, что можно верить cpuinfo. Вот на мой PIV там показываеться, что есть ГиперТрединг, а у меня его нету :-/
Для mplayer'а совсем не обязательны иксы. |
Ну это я знаю, только на framebuffer он далеко не у всех работает
Bash[DevNull] wrote: | А если интересен список приложений, которые используют SSE, то вот он |
Не надо путать SSE с SSE2. SSE это SIMD плавающая арифметика с одинарной точностью. Она нужна довольно небольшому количеству программ, используется редко.
А вот SSE2, который есть только в Pentium 4 и Athlon 64, это SIMD плавающая арифметика с двойной точностью. Ее использует значительно больше программ.
Но в генту флаг sse только один. Так что непонятно какой конкретно SSE использует программа. Для теста нужна программа, которой нужен именно простой SSE, SSE2 на дюроне точно нет, тестировать нечего. А вот где найти программу, которая способна использовать именно первый SSE? Это я и имел ввиду, вроде, mplayer может его использовать. Про libvorbis знаю только что она использует SSE2, про остальные пакеты не знаю. _________________ Light travels faster than sound. That's why some people appear bright before you hear them speak. |
|
Back to top |
|
|
Bash[DevNull] Guru
Joined: 10 Oct 2003 Posts: 333
|
Posted: Thu Jan 15, 2004 5:08 pm Post subject: |
|
|
Хм, но не обязательно же FB, я вот по VESA гоняю его в консоле :)
А про SSE ты прав, я думал в гентушных флагах есть SSE2 :) Так что вышепредложеный список не есть корректный ;) _________________ Biomechanical Artificial Sabotage Humanoid |
|
Back to top |
|
|
|