it-swarm-pt.tech

A melhor maneira de compilar um kernel para um processador i7?

Eu compilei meus próprios kernels por um tempo agora. Comecei quando recebi meu processador i7 e queria que seu turbo-boost funcionasse corretamente. Desde então, comprei um SSD, então continue a se beneficiar de um kernel mais recente do que a versão do repo.

Com minhas versões mais recentes, comecei a obter picos de CPU estranhos. Embora possa ser uma série de coisas diferentes causando isso, eu gostaria de focar em obter o kernel "certo" e, se possível, mais otimizado do que nunca.

Eu sigo o "Old-Fashioned Debian" no Kernel/Compile wiki. Eu faço isso porque estou construindo a partir de um download direto de kernel.org . Primeiras perguntas: Devo obter minha fonte de outro lugar e devo usar um método de compilação diferente?

O guia sugere a obtenção do .config atual da seguinte forma:

cp -vi /boot/config-`uname -r` .config

Isso é bom se a sua configuração atual funcionar bem, mas eu estou preocupado que o meu contenha um problema ... Segunda pergunta: Existe um arquivo .config padrão bom para o i7 amigável ao Ubuntu? Posso baixar de algum lugar?

Existem muitos patches de kernel flutuando no momento. Alguns prometem um sistema mais ágil por meio do patch de IO bugs, alguns dão "melhores" schedulers (BFS, et al), mas é difícil encontrar benchmarks decentes para ver se são recursos valiosos se forem apenas instáveis lixo. Terceiro: Existe algum patch que você aplicaria ao 2.6.35 para torná-lo mais compatível com o Lucid?

Eu temo que seja make menuconfig onde eu estraguei tudo. Eu tento desativar os drivers que eu não preciso e selecionar opções que parecem otimizar as coisas, mas, verdade seja dita, eu não sou um desenvolvedor de kernel; Eu não sei ao certo se uma opção vai quebrar tudo ou até mesmo ajudar em tudo. Quarto: Como você otimizaria o .config/build-process para um i7 e um SSD?

4
Oli

Do meu ponto de vista kernel.org é o lugar certo para obter um kernel. Normalmente eu clona o repositório git da mainline. Talvez você também possa usar um kernel Vanilla recente e aplicar os patches do Ubuntu. Você encontrará o diff na página do pacote linux-image . Esteja ciente de que pode haver alguns conflitos que você deve resolver. Então a primeira versão é provavelmente melhor.

Eu acho que você não encontraria nenhum .config bom na natureza. O que eu acho útil é make localmodconfig na fonte do kernel. Primeiro você copia sua configuração antiga para /usr/src/linux-2.6 (ou o local onde as fontes do kernel estão) e então você executa este comando. Ele irá desativar todos os módulos que não estão carregados. Então você ganha mais personalização em primeiro lugar.

Não tenho conhecimento de nenhum patch que seja bom para o Lucid.

Eu sou um membro de um local LUG . Fazemos de tempos em tempos workshops de kernel. Aqui todos os membros se encontram. Nós configuramos um kernel e falamos sobre nosso conhecimento de diferentes entradas. No final, todos lucram com isso e isso ajuda a construir melhores kernels. Então, se eu procurar por otimização, eu perguntaria aos nossos membros. Se isso não for uma opção, ler a lista de discussão Linux Kernel também pode ajudar a encontrar uma solução. Você encontrará muitas discussões que são úteis.

4
qbi

Existe um PPA do kernel da linha principal: https://wiki.ubuntu.com/Kernel/MainlineBuilds

A menos que você esteja tentando resolver um problema específico (que você experimenta com um kernel ekernel do Ubuntu) ou você está tentando usar um recurso/opção específico não disponível no kernel do Ubuntu, você provavelmente estará perdendo seu tempo.

Se você tiver algum problema com o seu kernel atual, por favor, registre um relatório de erros no launchpad.

3
João Pinto

Você não menciona qual versão do kernel você está construindo. Porque você perguntou sobre os patches para o Lucid, eu vou assumir que é isso que você está tentando Tweak.

Minha sugestão é não perder seu tempo. A equipe do Kernel do Ubuntu aplica todos os patches que são lançados pela equipe de lançamento estável do upstream para o Lucid (e outros lançamentos também). Você pode obter um pouco mais de desempenho do kernel por meio de parâmetros de configuração de ajustes manuais, mas você teria que gastar muito mais tempo tentando medir a melhoria se realmente houver um. Você ficaria muito melhor em ficar em um kernel de ações e pegar os kernels do Ubuntu. Esses patches podem conter melhorias de desempenho à medida que os bugs são encontrados e corrigidos.

A razão pela qual você pode estar vendo picos de CPU pode ser devido a alguns bugs do kernel que foram recentemente corrigidos pelo upstream e os patches estão trabalhando no Lucid agora.

Depois de começar a criar seu próprio kernel, você está assumindo a responsabilidade de mantê-lo corrigido e reconstruído. É o que a Canonical paga às pessoas para que você não precise. Você realmente tem coisas melhores para fazer com seu tempo.

2
Brad Figg