Compilando e otimizando KDE 3.x

Originalmente proposto para a distribuição Slackware, este artigo visa a compilação e otimização da interface gráfica KDE. A diferença de performance é nitidamente perceptível quando os pacotes kdebase e kdelibs são otimizados adequadamente.

[ Hits: 37.843 ]

Por: Perfil removido em 16/03/2007


Críticas



Alguns dizem não sentir diferenças perceptíveis em ter o KDE ou qualquer outro programa compilado, outros dizem que o tempo para compilar o KDE não vale a pena, já que a otimização e compilação não trazem os resultados tão esperados. Posso dizer aos céticos plantonistas que senti diferença sim e não foi nada psicológico.

Para ser franco, antes tinha uma telinha legal para o splash do KDE, agora uso a tela padrão, já que o tempo que o splash leva é mínimo (cerca de 4 segundos). O tempo de abertura das aplicações otimizados cai bruscamente. Passei a usar o Konqueror como navegador na maioria das vezes, porque ele abre instantaneamente (Imaginem o kde4, que está sendo montado sob plataforma Qt4 como deve ser. Se o desempenho do kde3 já é excelente, mal posso esperar para ver as coisas surgindo do éter no kde4).

Outra coisa são sobre as sintaxes de compilação que o chemonz publicou no nosso site/blog (http://tzbishop.wordpress.com). Usar a flag -O3 é considerado por muitos potencialmente inseguro, tendo em vista que há um maior uso de cache do processador. Assim, se o seu processador tiver pouco cache pode ser que o desempenho das aplicações compiladas com -O3 seja (por mais incrível que pareça) inferior ao das aplicações não-otimizadas. Enfim, eu tenho 512kb de cache em L2 em meu Pentium4 2.4 e não tive problemas com relação a isso.

Por fim, há uma última crítica. Fragmentar os pacotes, como fiz demonstrei na página anterior, pode reverter uma grande desvantagem no futuro. Vamos supor que eu adquira um scanner, por exemplo e amanhã eu precise do Kooka, para usar meu novo equipamento. Terei que baixar e configurar o kdegraphics de novo e aí sim, compilar o Kooka (se eu deletei a pasta de sources do kdegraphics, é claro).

Rebato a esse comentário dizendo que compilar apenas alguns programas de certos pacotes salva espaço em disco rígido (atualmente meu espaço em disco para o Slackware consta de 10GB. Gastar esse espaço com coisas que não preciso soa ilógico) e tempo de compilação, afinal você não estará compilado os pacotes inteiros e sim algumas partes. O ksnapshot e o kpdf são compilados em poucos minutos, assim como o kmix e o konq-plugins citados anteriormente.

Acabo meu artigo por aqui. Espero que tenha sido bem útil (ao menos pra mim, o que está contido aqui foi bastante útil). Quaisquer dúvidas, podem mandar via email e deixar um comentário no site: ficarei grato.

http://tzbishop.wordpress.com
tzbishop2k@gmail.com

Screenshot:

Página anterior    

Páginas do artigo
   1. Objetivo da insanidade
   2. Preparando o sistema
   3. Otimizando e instalando o kdelibs
   4. Otimizando e instalando o kdebase
   5. E o resto do KDE?
   6. Críticas
Outros artigos deste autor

O protocolo EAP-TTLS

Karl Marx e a concorrência individual no Viva o Linux

Instalando o Virtualbox da Sun Microsystems no Ubuntu

Linux x Windows - O paradoxo da atualização

PLC no Linux alguém já pensou nisso?

Leitura recomendada

A importância do modo texto

Instalando o Gnome-2.20.3 no Slackware 12 usando o Gslapt

Acesso remoto utilizando FreeNX

Efeito metálico no GIMP

xDVDShrink: um DVDShrink para Linux

  
Comentários
[1] Comentário enviado por tenchi em 16/03/2007 - 10:15h

Legal a iniciativa, pois os programas otimizados para a máquina ficam realmente mais rápidos. Eu também já tive a insanidade de compilar o KDE assim, mas ficou muita coisa faltando, por exemplo, o travamento da tela com o xlock. Se vc travasse a sessão com o KDE, ela não voltava, só no ctrl+alt+backspace msm... Mas isso foi burrada minha, que não vi a versão do xlock que o KDE usava. Mas eh assim msm. Ah, se vc gosta de deixar um programa sendo compilado, e sair pra tomar um café, compensa usar a capacidade máxima do processador no processo de compilação, que diminui em até a metadde o tempo de compilação (pelo menos aqui foi quase isso). Basta usar (como root) o nice:
# nice -n -20 make

Isso vai deixar a compilação como tendo prioridade máxima, o que vai fazer até a comunicação com o teclado ficar lenta.
Observação: Faça isso com o X desativado, pois senão ele irá travar.

Isso deve ser executado como root, pois as prioridades negativas são restritas ao root.

A última que eu tentei aqui foi o KDE 3.80.2, que um dia vai ser o KDE4. Só o Qt4 demorou mais de 4 horas em nice -20 rsrs. Também, com esse lixo aqui, que eu chamo de computador....


Flws.

[2] Comentário enviado por coffnix em 16/03/2007 - 12:58h

parabéns pelo artigo, excelente conteúdo!

e vlw pela citação do meu nome. hehehe

[3] Comentário enviado por hlegius em 16/03/2007 - 16:54h

Excelente!
Assim que der vou partir para uma instalação assim :-)

Parabéns pelo artigo!

[4] Comentário enviado por removido em 16/03/2007 - 19:26h

A ainda teve usuário que não lhe deu 10!!!
Parabéns!!!
Vc é um gênio!

[5] Comentário enviado por removido em 16/03/2007 - 20:50h

tenchi, bem legal essa dica do `nice`. Eu compilei o 3 80 2 também. Mas não compilei o Qt4.x, eu achei melhor tendo em mente que eu só iria usar o Qt4 pra testar o kde4. Mas achei muito legal essa dica do nice.
Inclusive, fiz uma dicazinha, parecida com essa sobre como compilar o kde4, 3.80 na verdade.
http://tzbishop.wordpress.com/2006/12/16/compilar-kde-3802/

[6] Comentário enviado por tenchi em 16/03/2007 - 22:04h

Muito legal essa dica que vc fez. Quem sabe se eu tivesse visto ela antes, não perderia tanto tempo tentando descobrir como funciona o cmake... rsrsrs.
Deu até uma discussão em torno do KDE4, no Br-Linux, mas finalmente hoje saiu uma notícia sobre o calendário do KDE4, que deverá sair em outubro (um ano depois do primeiro release instável).
Link das discussões:
http://br-linux.org/linux/planos-do-kde-4-para-versao-final-em-outubro
http://br-linux.org/linux/liberada-primeira-versao-nativa-do-amarok-para-mac-os

flws.

[7] Comentário enviado por GilsonDeElt em 17/03/2007 - 11:44h

Tom, seu artigo é simplesmente incrível. É o que eu precisava pra compilar meu KDE.
Mas, antes de começar, preciso tirar algumas dúvidas:
Meu processador é um Celeron D315, 2.26 GHz e 256 KB de cache L2. Seria uma boa idéia usar a otimização -O3?

Vale a pena compilar a QT e o XServer?

[8] Comentário enviado por removido em 17/03/2007 - 14:01h

GilsonElt, não vale a pena compilar o xserver e o Qt em si. Compile apenas o KDE. E use otimização -O3 sim! Veja em

http://tzbishop.wordpress.com/2007/01/25/flags-para-compilacao-segura-com-gcc-3x/

as sintaxes para sua otimização

[9] Comentário enviado por rgmmelo em 18/03/2007 - 21:11h

cara muito bom o seu artigo.... faz um tempo qu eu postei aqui pergutando se era possível eliminar aquele monte de programas que eu nem sei pra que servem, ai um cara disse que não era possivel. No entanto vc solucionou...mas acho que meu processador é fraquinho e não dá pra fazer isso. O seu tem 512 de cache e ficou com receio, e o meu celeron 1.8GHZ que so tem 128kb daria pra fazer em 03? ou em 02 perceberei melhoras?

[10] Comentário enviado por carlituS em 20/03/2007 - 00:39h

É disso que o pessoal do Gentoo fala, clicar no botão do Konqueror e abrir quase instantaneamente :)

E para o rgmmelo: no teu Celerom com 128KB pode inclusive ficar melhor com -O2 do que com -O3. Você pode até mesmo usar -Os, que reduz mais ainda o tamanho do executável. Este último faz todas as otimizações do -O2, optimizando para gerar executáveis menores, fazendo com que o tempo de carga e consumo de memória seja menor, sendo por isso recomendado para pcs mais antigos. Eu mudei de -O2 para -Os no meu Atlhon hoje e percebi uma pequena melhora, mas nada que justifique o investimento de recompilar tudo como eu fiz. Pro teu processador costuam recomendar:

CHOST="i686-pc-linux-gnu"
CFLAGS="-march=pentium4 -O2 -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"

Nota: eu já compilei meu sistema inteiro com -O3 num Atlhon XP 2200+ (256KB de cache). Ficou um tanto instável e lento (?) comparando com -O2.

Bons links sobre CFLAGS (em inglês):

http://gentoo-wiki.com/Safe_Cflags
http://gentoo-wiki.com/CFLAGS

Bem, uso de CFLAGS costumam gerar loooooongas discussões, cada um tem um ponto de vista diferente sobre o assunto :)

[11] Comentário enviado por removido em 22/03/2007 - 16:29h

é carlituS, a discussão sobre CFLAGS nunca termina mesmo. Eu particularmente, acho que 512kb de cache é o mínimo para compilar o sistema inteiro com -O3. Com 256kb de cache, acho interessante compilar somente alguns aplicativos com -O3 e o resto com -Os ou -O2. Enfim... é realmente uma discussão interminável

[12] Comentário enviado por GilsonDeElt em 22/03/2007 - 21:26h

Entrando nessa discussão interminável, o que pode ocorrer se eu compilar meu sistema com -O3? E com -O2? Ou seria melhor -Os? Só relembrando, Celeron D (Pentium 4-based) 2.26 GHz, 256 KB de cachê L2. Caso seja bom informar, meu PC tem 256 MB de RAM

[13] Comentário enviado por carlituS em 23/03/2007 - 09:29h

Eu acho que o máximo que pode acontecer é teu sistema ficar mais lento e com alguma coisa meio instável compilando com -O3, se comparado a uma compilação com -O2, justamente por causa do pouco cache do teu processador. Pro teu Celeron, eu iria de -O2 mesmo.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts