Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Que optimizações é k o ppl usa ?
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Portuguese
View previous topic :: View next topic  
Author Message
MetalGod
Bodhisattva
Bodhisattva


Joined: 10 Mar 2003
Posts: 816
Location: Portugal

PostPosted: Wed May 28, 2003 1:01 pm    Post subject: Que optimizações é k o ppl usa ? Reply with quote

Por acaso gostava de saber k optimizações eh k o ppl usa... tipo façam comentarios pros e contras de usarem essas optimizações... :)
Bem as minhas optimizaçoes sao as seguintes... 8)

Code:

CHOST="i686-pc-linux-gnu"

CFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer"

CXXFLAGS="${CFLAGS}"



Eu noto que por vezes a CFLAG "-O3" por vezes eh bastante violenta e causa erros de codigo. Quando isso acontece uso "-O2" k que a optimizção aconselhada antes de submeter bugs...
_________________
ex: Gentoo Linux Developer: amd64 media-optical sound gnome
ex: Portuguese Moderator
------------------------------------------------------------------------------
God Doesn't Play Dice
Back to top
View user's profile Send private message
RoadRunner
Moderator
Moderator


Joined: 12 Jun 2002
Posts: 490
Location: Coimbra, Portugal

PostPosted: Wed May 28, 2003 1:50 pm    Post subject: Reply with quote

Eu uso precisamente isso em todas as máquinas (menos no servidor, onde não osu o -fomit-frame-pointer) e nunca tive problemas devido a flags. pelo menos problemas que mudando de -O3 para -O2 resolvessem.
Back to top
View user's profile Send private message
AngusYoung
Retired Dev
Retired Dev


Joined: 20 Dec 2002
Posts: 473
Location: Campinas, SP - Brazil

PostPosted: Wed May 28, 2003 4:19 pm    Post subject: Reply with quote

Code:
CFLAGS="-march=pentium3 -O3 -pipe -mmmx -msse -mfpmath=sse -fforce-addr -fforce-mem -fomit-frame-pointer -falign-functions -fprefetch-loop-arrays"

e
Code:
CFLAGS="-march=athlon-tbird -O3 -pipe -mmmx -m3dnow -fforce-addr -fforce-mem -fomit-frame-pointer -falign-functions -fprefetch-loop-arrays"


A propósito, nunca tive problemas com -03. Inclusive o Open Office foi compilado com essas CFLAGS.

Abraços
_________________
N.U.S.: A cross platform C++ application development framework
My blog (in Portuguese)
Back to top
View user's profile Send private message
MetalGod
Bodhisattva
Bodhisattva


Joined: 10 Mar 2003
Posts: 816
Location: Portugal

PostPosted: Wed May 28, 2003 5:24 pm    Post subject: optimizaçoes Reply with quote

[quote="AngusYoung"]
Code:
CFLAGS="-march=pentium3 -O3 -pipe -mmmx -msse -mfpmath=sse -fforce-addr -fforce-mem -fomit-frame-pointer -falign-functions -fprefetch-loop-arrays"


Eu por acaso já pensei em usar as CFLAGS "-mmmx -msse" mas pelo k sei tive a ler alguns dos essas flags sao activadas directamento logo quando "-march=pentium3" :)
_________________
ex: Gentoo Linux Developer: amd64 media-optical sound gnome
ex: Portuguese Moderator
------------------------------------------------------------------------------
God Doesn't Play Dice
Back to top
View user's profile Send private message
v
n00b
n00b


Joined: 26 Feb 2003
Posts: 23
Location: Porto, Portugal

PostPosted: Wed May 28, 2003 5:30 pm    Post subject: Reply with quote

Eu usa estas:
Code:
CFLAGS="-march=athlon -O2 -pipe -fomit-frame-pointer"


o normal excepto o -O2 :lol:
Back to top
View user's profile Send private message
AngusYoung
Retired Dev
Retired Dev


Joined: 20 Dec 2002
Posts: 473
Location: Campinas, SP - Brazil

PostPosted: Wed May 28, 2003 6:06 pm    Post subject: Re: optimizaçoes Reply with quote

[quote="MetalGOD"]
AngusYoung wrote:
Code:
CFLAGS="-march=pentium3 -O3 -pipe -mmmx -msse -mfpmath=sse -fforce-addr -fforce-mem -fomit-frame-pointer -falign-functions -fprefetch-loop-arrays"


Eu por acaso já pensei em usar as CFLAGS "-mmmx -msse" mas pelo k sei tive a ler alguns dos essas flags sao activadas directamento logo quando "-march=pentium3" :)

Pois também já ouvi muitas discussões sobre -march=pentium3 e -mmmx -msse serem ou não redundantes. Porém até hoje não encontrei nenhum artigo técnico que tirasse a dúvida ...
_________________
N.U.S.: A cross platform C++ application development framework
My blog (in Portuguese)
Back to top
View user's profile Send private message
RoadRunner
Moderator
Moderator


Joined: 12 Jun 2002
Posts: 490
Location: Coimbra, Portugal

PostPosted: Wed May 28, 2003 6:19 pm    Post subject: Reply with quote

Ver aqui para uma lista das opmimizações com a opção -O? e ver aqui para a lista de opções para os parametros específicos da arquitectura x86.
Back to top
View user's profile Send private message
DataShark
n00b
n00b


Joined: 26 May 2002
Posts: 28
Location: Portugal

PostPosted: Wed May 28, 2003 8:50 pm    Post subject: para quem tiver o gcc3.3 ... Reply with quote

Quote:

emerge info Portage 2.0.48 (default-x86-1.4, gcc-3.3, glibc-2.3.2-r2)
=================================================================
System uname: 2.5.69-mm7 i686 Intel(R) Pentium(R) 4 Mobile CPU 1.70GHz
GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://www.ibiblio.org/pub/Linux/distributions/gentoo"
CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/config"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
PORTDIR="/usr/portage"
DISTDIR="/usr/portage/distfiles"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR_OVERLAY="/usr/local/portage"
USE="x86 oss 3dnow apm avi crypt cups encode gif imlib jpeg kde libg++ mikmod mmx mpeg ncurses nls pdflib png quicktime spell truetype xml2 xmms xv zlib alsa gdbm berkdb slang readline arts tetex nas svga tcltk java guile ruby postgres X sdl gpm tcpd pam libwww ssl perl python esd oggvorbis gnome gtk qt motif opengl mozilla gphoto2 ldap cdr acl acpi apache2 canna cjk curl doc dvb dvd emacs ethereal evo freewnn gb gd gnomedb gps gtk2 gtkhtml icc imap jikes junit kerberos lcms leim libgda lirc mbox mpi mule nptl oav odbc pcmcia pda pic plotutils pnp samba sasl slp snmp sse tiff trusted usb wmf xml"
COMPILER="gcc3"
CHOST="i686-pc-linux-gnu"
CFLAGS="-s -march=pentium4 -mmmx -msse -msse2 -O3 -mfpmath=sse -fomit-frame-pointer -pipe -fexpensive-optimizations -fpic -foptimize-register-move -ffast-math -frename-registers -fforce-addr -fprefetch-loop-arrays -falign-functions=4 -falign-jumps=4 -falign-loops=4 -maccumulate-outgoing-args"
CXXFLAGS="-s -march=pentium4 -mmmx -msse -msse2 -O3 -mfpmath=sse -fomit-frame-pointer -pipe -fexpensive-optimizations -fpic -foptimize-register-move -ffast-math -frename-registers -fforce-addr -fprefetch-loop-arrays -falign-functions=4 -falign-jumps=4 -falign-loops=4 -maccumulate-outgoing-args"
ACCEPT_KEYWORDS="x86 ~x86"
MAKEOPTS="-j2"
AUTOCLEAN="no"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
FEATURES="ccache buildpkg -sandbox noclean"


juntamente com NPTL (kernel mm-sources) excepto ainda alguns problemas com algumas packages que não apreciam as optimizações SSE so far so good ...


P.S. : já sei que nas CFLAGS há algumas redundâncias ... laziness
Back to top
View user's profile Send private message
MetalGod
Bodhisattva
Bodhisattva


Joined: 10 Mar 2003
Posts: 816
Location: Portugal

PostPosted: Thu May 29, 2003 12:44 am    Post subject: UI :) Reply with quote

Tanta coisa :)
tenho umas criticas para as CFLAGS pois ao k parece o -march=pentium4 n eh muito famoso :?

code]-mmmx -msse -msse2 [/code] tb parece k pelo k andei a investigar sao default no -march=pentiumxxx
_________________
ex: Gentoo Linux Developer: amd64 media-optical sound gnome
ex: Portuguese Moderator
------------------------------------------------------------------------------
God Doesn't Play Dice
Back to top
View user's profile Send private message
meetra
Tux's lil' helper
Tux's lil' helper


Joined: 18 Nov 2002
Posts: 135
Location: Porto, Portugal

PostPosted: Thu May 29, 2003 3:13 am    Post subject: Re: optimizaçoes Reply with quote

AngusYoung wrote:
MetalGOD wrote:
Code:
CFLAGS="-march=pentium3 -O3 -pipe -mmmx -msse -mfpmath=sse -fforce-addr -fforce-mem -fomit-frame-pointer -falign-functions -fprefetch-loop-arrays"


Eu por acaso já pensei em usar as CFLAGS "-mmmx -msse" mas pelo k sei tive a ler alguns dos essas flags sao activadas directamento logo quando "-march=pentium3" :)

Pois também já ouvi muitas discussões sobre -march=pentium3 e -mmmx -msse serem ou não redundantes. Porém até hoje não encontrei nenhum artigo técnico que tirasse a dúvida ...


gcc $CFLAGS -v file.c

e jah agora
Code:
CHOST="i586-pc-linux-gnu"
CFLAGS="-march=pentium-mmx -O3 -fomit-frame-pointer -pipe"
CXXFLAGS="-march=pentium-mmx -O3 -fomit-frame-pointer -pipe"
Back to top
View user's profile Send private message
DataShark
n00b
n00b


Joined: 26 May 2002
Posts: 28
Location: Portugal

PostPosted: Thu May 29, 2003 5:25 pm    Post subject: Re: UI :) Reply with quote

MetalGOD wrote:
Tanta coisa :)
tenho umas criticas para as CFLAGS pois ao k parece o -march=pentium4 n eh muito famoso :?

code]-mmmx -msse -msse2 [/code] tb parece k pelo k andei a investigar sao default no -march=pentiumxxx


o -march=mpentium4 dava problemas (nomeadamente com as funções matemáticas) na glibc ... tanto quanto se sabe esses problemas estão resolvidos... e a glibc passa *todos* os testes quando compilada com o gcc 3.3. ...

ver a propósito: http://gcc.gnu.org/gcc-3.3/changes.html ...

Em suma, ter lido o subject do post não tinha sido má ideia ...
Back to top
View user's profile Send private message
DataShark
n00b
n00b


Joined: 26 May 2002
Posts: 28
Location: Portugal

PostPosted: Thu May 29, 2003 5:28 pm    Post subject: Re: optimizaçoes Reply with quote

meetra wrote:
AngusYoung wrote:
MetalGOD wrote:
Code:
CFLAGS="-march=pentium3 -O3 -pipe -mmmx -msse -mfpmath=sse -fforce-addr -fforce-mem -fomit-frame-pointer -falign-functions -fprefetch-loop-arrays"


Eu por acaso já pensei em usar as CFLAGS "-mmmx -msse" mas pelo k sei tive a ler alguns dos essas flags sao activadas directamento logo quando "-march=pentium3" :)

Pois também já ouvi muitas discussões sobre -march=pentium3 e -mmmx -msse serem ou não redundantes. Porém até hoje não encontrei nenhum artigo técnico que tirasse a dúvida ...


gcc $CFLAGS -v file.c

e jah agora
Code:
CHOST="i586-pc-linux-gnu"
CFLAGS="-march=pentium-mmx -O3 -fomit-frame-pointer -pipe"
CXXFLAGS="-march=pentium-mmx -O3 -fomit-frame-pointer -pipe"




vê : http://gcc.gnu.org/onlinedocs/gcc-3.3/gcc/i386-and-x86-64-Options.html#i386%20and%20x86-64%20Options e http://gcc.gnu.org/onlinedocs/gcc-3.3/gcc/Optimize-Options.html#Optimize%20Options ...

(se estiveres a usar outra versão do gcc é só mudar a versão na URL ...)

Um abraço ...
Back to top
View user's profile Send private message
MetalGod
Bodhisattva
Bodhisattva


Joined: 10 Mar 2003
Posts: 816
Location: Portugal

PostPosted: Thu Jun 05, 2003 11:32 am    Post subject: actualização Reply with quote

Bem...

Code:

Portage 2.0.48-r1 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r1)
=================================================================
System uname: 2.5.70-mm4 i686 AMD Athlon(tm) XP 2000+
GENTOO_MIRRORS="http://www.mirror.ac.uk/sites/www.ibiblio.org/gentoo http://gent                                                                                   
oo.oregonstate.edu http://www.ibiblio.org/pub/Linux/distributions/gentoo"
CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config /usr/kde/3/share                                                                                   
/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config /usr/share/config"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
PORTDIR="/usr/portage"
DISTDIR="/usr/portage/distfiles"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR_OVERLAY=""
USE="x86 apm arts kde libg++ libwww mikmod motif quicktime spell xml2 gdbm berkd                                                                                   
b readline java guile tcpd pam esd X gtk tcltk ipv6 gnome 3dnow aalib avi bonobo                                                                                   
 cdr crypt cups curl dga directfb dvd encode flash gif gpm gtk2 imlib jpeg maild                                                                                   
ir mmx mozilla mpeg ncurses nls oggvorbis opengl oss pdflib perl png python qt s                                                                                   
dl slang sse ssl svga truetype usb xmms xv zlib"
COMPILER="gcc3"
CHOST="i686-pc-linux-gnu"
CFLAGS="-march=athlon-xp -O2 -pipe -fomit-frame-pointer"
CXXFLAGS="-march=athlon-xp -O2 -pipe -fomit-frame-pointer"
ACCEPT_KEYWORDS="x86 ~x86"
MAKEOPTS="-j2"
AUTOCLEAN="yes"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
FEATURES="sandbox ccache"


:wink:
_________________
ex: Gentoo Linux Developer: amd64 media-optical sound gnome
ex: Portuguese Moderator
------------------------------------------------------------------------------
God Doesn't Play Dice
Back to top
View user's profile Send private message
To
Veteran
Veteran


Joined: 12 Apr 2003
Posts: 1145
Location: Coimbra, Portugal

PostPosted: Thu Jun 05, 2003 12:15 pm    Post subject: Reply with quote

Quote:
CFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer"
#CFLAGS="-march=pentium3 -mmmx -msse -msse2 -mfpmath=sse -O3 -pipe -fomit-frame-pointer -funroll-loops -frerun-cse-after-loop -frerun-loop-opt -falign-functions=4 -fschedule-insns2 -fforce-addr -fprefetch-loop-arrays -ffast-math"
# If you set a CFLAGS above, then this line will set your default C++ flags to
# the same settings.
CXXFLAGS="${CFLAGS}"


Já usei a linha que tenho comentada, mas ainda esta semana tive de mudar pq tinha erros a compilar util-linux e o gettext entre outros. Btw tb vi um post a dizer que o as flags "-mmmx -msse" são redundantes para march pentiumx.


_________________

------------------------------------------------
Linux Gandalf 3.2.35-grsec
Gentoo Base System version 2.2
------------------------------------------------
Back to top
View user's profile Send private message
lmpinto
Tux's lil' helper
Tux's lil' helper


Joined: 12 Feb 2003
Posts: 94
Location: somewhere near a computer and a beer.

PostPosted: Thu Jun 05, 2003 2:47 pm    Post subject: Reply with quote

To wrote:
Quote:
CFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer"
#CFLAGS="-march=pentium3 -mmmx -msse -msse2 -mfpmath=sse -O3 -pipe -fomit-frame-pointer -funroll-loops -frerun-cse-after-loop -frerun-loop-opt -falign-functions=4 -fschedule-insns2 -fforce-addr -fprefetch-loop-arrays -ffast-math"
# If you set a CFLAGS above, then this line will set your default C++ flags to
# the same settings.
CXXFLAGS="${CFLAGS}"


Já usei a linha que tenho comentada, mas ainda esta semana tive de mudar pq tinha erros a compilar util-linux e o gettext entre outros. Btw tb vi um post a dizer que o as flags "-mmmx -msse" são redundantes para march pentiumx.



Também já tive uma parecida com essa (numa consola de 80 caracteres eram 3 linhas e meia), até fazer um 'man gcc', e ver que por exemplo o '-funroll-loops', o '-fprefetch-loop-arrays' e outras são automaticamente activadas quando usas -O3... De maneira que uma linha dessas impressiona, mas quando se vai a ver não faz muito mais do que a que usas agora :-)

Neste momento tenho:

Code:
CFLAGS="-march=pentium4 -mcpu=pentium4 -O3 -pipe -fomit-frame-pointer -mmmx -msse -msse2 -mfpmath=sse,387  -fforce-addr"


Estou com problemas a compilar o libgtk-3.0.4 e o alsa-tools-0.9.4, mas já experimentei sem nenhumas optimizações (nem mesmo o -j2) e continua a dar erros. Logo, as que tenho vão continuar, pelo menos durante mais um tempo, até ter tempo de ler a manpage do gcc...

Agora queria saber porque raio é que o xfree-4.3.0-r3 me pede para fazer o downgrade para o gcc-3.2.3-r1...
Back to top
View user's profile Send private message
MetalGod
Bodhisattva
Bodhisattva


Joined: 10 Mar 2003
Posts: 816
Location: Portugal

PostPosted: Tue Jun 17, 2003 2:30 am    Post subject: update Reply with quote

well nice update
dp de muitos testes com a minha maquina fiquei por:
Code:

Portage 2.0.48-r1 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r1)
=================================================================
System uname: 2.4.20-gentoo-r5 i686 AMD Athlon(tm) XP 2000+
GENTOO_MIRRORS="http://www.ibiblio.org/pub/Linux/distributions/gentoo"
CONFIG_PROTECT="/etc /var/qmail/control /usr/share/config /usr/kde/2/share/confi                                                                                     
g /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
PORTDIR="/usr/portage"
DISTDIR="/usr/portage/distfiles"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR_OVERLAY=""
USE="x86 apm arts kde libg++ libwww mikmod motif nls qt quicktime spell xml2 xv                                                                                       
gdbm berkdb readline guile tcpd pam esd X gtk gnome gtk2 3dnow sse ssl mmx aalib                                                                                     
 usb cups truetype avi bonobo cdr crypt dga dvd encode flash gif gpm imlib maild                                                                                     
ir java jpeg mozilla mpeg ncurses oggvorbis opengl oss pdflib perl png python sd                                                                                     
l slang svga xmms zlib"
COMPILER="gcc3"
CHOST="i686-pc-linux-gnu"
CFLAGS="-march=athlon-xp -O2 -pipe -ffast-math -mmmx -msse -m3dnow"
CXXFLAGS="-march=athlon-xp -O2 -pipe -ffast-math -mmmx -msse -m3dnow"
ACCEPT_KEYWORDS="x86 ~x86"
MAKEOPTS="-j2"
AUTOCLEAN="yes"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
FEATURES="sandbox ccache"


:wink:
_________________
ex: Gentoo Linux Developer: amd64 media-optical sound gnome
ex: Portuguese Moderator
------------------------------------------------------------------------------
God Doesn't Play Dice
Back to top
View user's profile Send private message
jig
n00b
n00b


Joined: 15 Feb 2003
Posts: 4

PostPosted: Sun Jun 29, 2003 8:02 pm    Post subject: Reply with quote

lmpinto wrote:

Também já tive uma parecida com essa (numa consola de 80 caracteres eram 3 linhas e meia), até fazer um 'man gcc', e ver que por exemplo o '-funroll-loops', o '-fprefetch-loop-arrays' e outras são automaticamente activadas quando usas -O3...


Olá!

Podias-me indicar onde é que leste isto no manual do gcc? gcc3.3?
Back to top
View user's profile Send private message
lmpinto
Tux's lil' helper
Tux's lil' helper


Joined: 12 Feb 2003
Posts: 94
Location: somewhere near a computer and a beer.

PostPosted: Sun Jun 29, 2003 8:45 pm    Post subject: Reply with quote

jig wrote:
lmpinto wrote:

Também já tive uma parecida com essa (numa consola de 80 caracteres eram 3 linhas e meia), até fazer um 'man gcc', e ver que por exemplo o '-funroll-loops', o '-fprefetch-loop-arrays' e outras são automaticamente activadas quando usas -O3...


Olá!

Podias-me indicar onde é que leste isto no manual do gcc? gcc3.3?


Raios partam isto. Tanta flag que é activada com o -O3, e eu logo vou dar dois exemplos das poucas que não são. :oops:
Back to top
View user's profile Send private message
DataShark
n00b
n00b


Joined: 26 May 2002
Posts: 28
Location: Portugal

PostPosted: Sun Jun 29, 2003 10:41 pm    Post subject: links ... Reply with quote

lmpinto wrote:
jig wrote:
lmpinto wrote:

Também já tive uma parecida com essa (numa consola de 80 caracteres eram 3 linhas e meia), até fazer um 'man gcc', e ver que por exemplo o '-funroll-loops', o '-fprefetch-loop-arrays' e outras são automaticamente activadas quando usas -O3...


Olá!

Podias-me indicar onde é que leste isto no manual do gcc? gcc3.3?


Raios partam isto. Tanta flag que é activada com o -O3, e eu logo vou dar dois exemplos das poucas que não são. :oops:


http://gcc.gnu.org/onlinedocs/gcc-3.3/gcc/ ou para os conservadores http://gcc.gnu.org/onlinedocs/gcc-3.2.3/gcc/
Back to top
View user's profile Send private message
To
Veteran
Veteran


Joined: 12 Apr 2003
Posts: 1145
Location: Coimbra, Portugal

PostPosted: Sun Jun 29, 2003 11:19 pm    Post subject: Re: links ... Reply with quote

DataShark wrote:
http://gcc.gnu.org/onlinedocs/gcc-3.3/gcc/ ou para os conservadores http://gcc.gnu.org/onlinedocs/gcc-3.2.3/gcc/


Conservadores ou que gostam de ter as maquinas com as versões mais estáveis:)


_________________

------------------------------------------------
Linux Gandalf 3.2.35-grsec
Gentoo Base System version 2.2
------------------------------------------------
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portuguese All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum