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: 33.550 ]

Por: Perfil removido em 16/03/2007


Objetivo da insanidade



Conversando com o pessoal do #slackware-br (irc.freenode.net) sobre o quanto recompilar e otimizar um programa melhora a performance, decidi testar por mim mesmo a compilação e otimização do KDE 3.x para meu processador. E digo: o resultado foi espantoso.

O desempenho do KDE e de suas aplicações ficou consideravelmente melhor. Foram cerca de 10 horas de compilação no meu Pentium4, deixei compilando durante 2 madrugadas (respectivamente pacotes kdelibs e kdebase). Mas, no final, digo: vale a pena.

O segundo motivo que me levou a compilar o KDE foi que os pacotes do KDE no Slackware não são fragmentados como em outras distribuições como o Debian. Se preciso ter o programa KuicKshow no meu Slack, terei que instalar o pacote kdegraphics, assim terei o kuickShow e mais um monte de palha que não uso (não tenho scanner, pra que quero ter o Kooka? Pra enfeite?). Compilar o KDE nos dá a escolha de ter o pacote completo do kdegraphics ou apenas alguns programas do kdegraphics, por exemplo.

O terceiro motivo e creio que último motivo pelo qual compilei o KDE foi a abstração de hardware. O recurso do HAL + KDE não vem habilitado por padrão no pacote kdebase oficial do Slackware (do Patrick Volkerding), para tê-lo, podemos recorrer à pacotes de terceiros ou compilar por nós mesmos. Pra quem não sabe, o HAL + KDE permite que quando inserimos um CD no driver, por exemplo, o KDE pergunte o que queremos fazer com o CD.

Agradeço a ajuda do pessoal do #slackware-br, especialmente o chemonz, pela ajuda necessária.

    Próxima página

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

Um tour pelos ripadores de CDs para Linux

Instalando o Gentoo Linux através do live-cd do Ubuntu

Tutorial de instalação do H3270 (sources) com SSL no RHEL5 (s390x)

Introdução a CGI com a RFC 3875

Gerenciamento centralizado de usuários de rede com GOSA

Leitura recomendada

Atualizando o navegador Firefox para a versão 4.0

Instalando pacotes .tar.gz e .tar.bz2

AMSN, uma opção Open Source para o Messenger da Microsoft

Instalando o Ocomon 1.40 no FreeBSD 6.0

Acessando desktop remotamente com noMachine

  
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 HostGator.
Linux banner
Linux banner
Linux banner

Artigos

Dicas

Viva o Android

Tópicos

Top 10 do mês

Scripts