Gentoo Archives: gentoo-user-br

From: Thiago Nunes <thiago@×××××××××××××.br>
To: gentoo-user-br@l.g.o
Subject: Re: [gentoo-user-br] CFLAGS em rede mista
Date: Fri, 23 Feb 2007 20:33:41
Message-Id: 20070223173308.0zeznrql8g08ks44@serv2.ceamecim.furg.br
In Reply to: Re: [gentoo-user-br] CFLAGS em rede mista by "Pablo \\\"NatuNobilis\\\""
1 Quoting "Pablo \"NatuNobilis\"" <natunobilis@××××××××.org>:
2
3 > Até onde sei, só pode haver um mtune.
4 > Nesse caso, eu recomendo, por experiência pessoal, o -mtune=athlon-xp.
5 > Tenho um Athlon XP e um Pentium 4 e, por incrível que pareça, *ambos*
6 > rodam mais rápido os binários compilados com -march=athlon-xp.
7
8 Interessante, é estranho mas se você diz... Era bem notável essa diferença?
9
10 > Não estou me confundindo. O -march=athlon-xp supostamente quebraria a
11 > compatibilidade com um pentium4, mas os poucos aplicativos onde eu
12 > testei isso rodaram mais rápido (ou tão rápido quanto) os mesmos
13 > compilados com -march=pentium4.
14
15 Eu acho que você não teve problemas porque não rodou nada que usasse
16 as instruções 3dnow.
17
18 > De resto, eu tenho um pouco de receio de fazer o -march e o -mtune
19 > discordarem. Ainda não entendi se isso é:
20 > 1) permitido,
21 > 2) recomendável, ou
22 > 3) contraditório (e portanto, ruim para o desempenho)
23
24 Segundo o man do gcc: "specifying -march=cpu-type implies
25 -mtune=cpu-type" (linha 5925)
26
27 > Alguém já ouviu falar do Acovea? Ele faz uma análise de desempenho das
28 > flags de compilação, usando algoritmos genéticos, e no final mostra
29 > tabelas com as flags e seus efeitos na velocidade do binário.
30 >
31 > Concluindo, eu usaria o Acovea pra cada uma das máquinas, modificando a
32 > configuração das flags a serem testadas (o arquivo de configuração do
33 > Acovea é XML, bem fácil de editar). No final, eu usaria as flags mais
34 > genéricas que demonstrassem o melhor desempenho.
35 > (Detalhe: o Acovea tem o hábito de mostrar que as flags já escolhidas
36 > são as melhores possíveis)
37 > (Outro detalhe: O Acovea faz isso porque ele é a ferramenta usada pelos
38 > desenvolvedores do GCC justamente pra definir quais flags serão
39 > incluídas nos diferentes níveis de otimização: -O, -O1, -O2, -O3 e -Os).
40 >
41 > Se você não quiser gastar esse tempo todo com o Acovea (ele demora mais
42 > de 24h pra rodar), eu sugiro ainda assim que você use as flags mais
43 > genéricas possíveis.
44 >
45 > *Se fosse eu*, eu usaria em todas as máquinas:
46 > CFLAGS='-O2 -mtune=athlon-xp -msse -msse2 -mmmx -pipe -fomit-frame-pointer'
47
48 Não da, athlon-xp não tem sse2. E sem colocar um march ele dexa
49 compatível com i386, mas a gente pode nivelar por i686.
50
51 > Alguém aí conhece bem o Acovea? Quer escrever um artigo sobre ele? Pra
52 > Linux Magazine?
53 > Se ninguém escrever, eu vou acabar escrevendo, hein. :)
54 >
55 > Abraços,
56 > Pablo
57
58 Muito obrigado.
59
60 >
61 > André Luis Tibola escreveu:
62 >> Olá,
63 >>
64 >> Temos aqui uma rede de, atualmente, +-220 computadores dentre os
65 >> quais os processadores são: Pentium4, Celeron, Semprom e Atlon XP.
66 >> Estamos migrando +-100 deles para gentoo e aí surgiu a dúvida de
67 >> quais flags do gcc seriam as mais apropriadas.Chegamos a um
68 >> 'CFLAGS="-O2 -march=i686 -mtune=pentium4 -mmmx -msse
69 >> -fomit-frame-pointer -pipe -w"'; mas restaram algumas duvidas:
70 >>
71 >> 1- Adicionar um "-mtune=athlon-xp" "cancelará" o "-mtune=pentium4"
72 >> ou ficará melhor?
73 >> 2- Funcionará e é melhor, usar um "-march intermediário" como
74 >> "-march=pentium3"?
75 >>
76 >> Além disso, gostaria de outras sugestões.
77 >>
78 >> Valeu!
79 > --
80 > gentoo-user-br@g.o mailing list
81
82
83
84 --
85 gentoo-user-br@g.o mailing list

Replies

Subject Author
Re: [gentoo-user-br] CFLAGS em rede mista "Pablo \\\"NatuNobilis\\\"" <natunobilis@××××××××.org>