segunda-feira, fevereiro 18, 2008

Aprendendo a Voar com U/K/X/E

Eu testei e funciona mesmo, meu pc ficou uma bala

Tutorial escrito por.
Hqxriven


Kubuntu 7.10 – Aprendendo a voar sem segredos
(A jornada de um usuário iniciante inconformado que teve que aprender a otimizar seu sistema)

Para conferir o tutorial na Integra.
Introdução

Como ex-usuário do Slack, Gentoo, Debian Sarge e Sidux (e mais algumas) notei o quanto faz diferença uma simples otimização.

Por estar acostumado com sistemas rápidos e sempre procurar extrair uma boa relação de performance entre hardware e software fiquei decepcionado ao testar o (KU)buntu 7.10 e ver a sua lentidão ao abrir um simples arquivo, sem contar o boot lento e no uso do sistema em geral. Problemas que também foram relatados por outros usuários.

Então desisti e voltei para o Sidux e inconformado ficava me perguntando, “como uma distribuição baseada no debian, com pacotes do debian sid que não são otimizados consegue ser tão rápida??”.

Então após uma intensa pesquisa em projetos alternativos que dão maior velocidade ao sistema (como o kamikase, Zen e Ck) e em outras otimizações espalhadas por diversos fóruns e depois de sucessivos testes cheguei a determinadas conclusões e gostaria de compartilhar esse conhecimento com vocês.

Antes de tudo, não me responsabilizo por eventuais danos ao seu sistema, por isso FAÇA BACKUP e NÃO FAÇA ISSO EM UM SERVIDOR.

Kernel - Entendendo um pouco da falta de desempenho no kubuntu

O kernel na minha opinião é o principal responsável pela falta de desempenho no kubuntu 7.10.

Comparando o desempenho com o debian etch ou o Sidux (que na opinião de alguns usuários do forum gdh é o mais rápido baseado no debian, não sendo necessário mexer em quase nada para aumentar a performance), vc verá que o Kubuntu perde feio para eles.

Mas a questão não são os pacotes É O KERNEL.

O kernel do Debian é enxuto, trazendo uma boa relação entre performance e compatibilidade com hardware, afinal ele é usado em servidores, o do Sidux traz uma alta performance sacrificando um pouco a compatibilidade (em relação ao debian) e o do Kubuntu quer ser compatível com tudo e por ter um kernel inflado acaba ficando lento.

Mas aí vc pode pensar...
“Eu desativo tudo, compilo para meu hardware e fica rápido!!.”

Pois aí é que ocorre o engano e foi o motivo que pesquisei, pois mesmo compilado para minha arquitetura o sidux ainda era mais rápido com uma arquitetura genérica.

Então comecei a usar o google e pesquisar o máximo que pude.

Até que achei um nome de um ex-desenvolvedor de patches para o kernel chamado Con kolivas e a sua história (aconselho que vocês deêm uma olhada no google).

Em resumo ele se esforçava para fazer com que o linux fosse rápido nos desktops, mas ele não era ouvido apesar de contribuir bastante com o desenvolvimento.

Então peguei o último patch dele e coloquei no kernel do kubuntu e vi ele ficar bem rápido.

Já estava satisfeito no quesito kernel, mas aí tive a idéia de colocar o patch no kernel do sidux e vi o sistema “voar”; afinal o kernel do sidux já possui a configuração voltada para performance.

Então tive a idéia... Vou compilar o kernel do kubuntu com as configurações do Sidux e vou colocar o patch do Con kolivas, chamado de ck.

Mas fiquei chateado visto que ele parou de fazer os patches no 2.6.22.

Então procurei um patch não oficial para o 2.6.23 e apliquei no kernel e então pela primeira vez eu vi o meu kubuntu voar. Pela primeira vez eu vi o desempenho dele superar o debian, vi que o meu esforço e as 12 compilações de testes tinham valido a pena.

Estava enfim satisfeito, estava com um kernel específico para desktops tirando o máximo de proveito do meu desktop.

Kernel slash 3 - (com melhorias na performance e no gerenciamento da memória)

Para conseguir fazer esse kernel eu tive que aprender bastante e foi um bom desafio.

Como agora a maioria dos patches interessantes funciona somente no 2.6.24 e o meu modem ainda não, deixo esse presente para vcs.

Alterei algumas configurações na versão 3 e agora ele usa o 2.6.23.16!!!

Possui o 4K stacks (dessa vez ativei que ajuda bastante na performance), relatime (aumento da performance do hd e diminuição no acesso ao disco), squashfs3.3 (para o remastersys), ck1 (melhora no gerenciamento da memória e otimização do sistema), os patches inteligentes genetic libray, genetic cfq sched e genetic io sched (que de forma inteligente adaptam o seu sistema para ter a melhor performance no uso das bibliotecas e do i/o scheduler cfq) e por último os otimizadores do sheduler sched cfs tunables e shed cfs boost (que alteram a latência do scheduler e ajudam dando uma alta interatividade ao sistema) e o i/o workload fingerprinting (que ajuda diminuindo o processamento).

Vocês vão notar o relatime em funcionamento da seguinte forma

cat /proc/mounts

Mais configurações personalizadas para aumentar a performance...

Kernel slash 3 compilado para o (KXU)buntu 7.10




Nenhum comentário: