Um pacote que eu compilar me executa melhor do que instalar a partir dos repositórios?

6

O desempenho de um pacote é diferente quando compilado de fontes ou instalado a partir do repositório? É possível, o que durante a compilação, o pacote será "mais adaptado" (desempenho, estabilidade) para o seu sistema, se for compilado nele?

    
por Fedir RYKHTIK 02.07.2012 / 16:46

3 respostas

8

A menos que você esteja fazendo uma otimização séria durante a criação ou fazendo alterações significativas nos recursos que está criando, para programas muito complexos, é muito improvável que você veja qualquer benefício de desempenho. E mesmo com as otimizações sérias, você só verá melhorias mínimas. Não há vantagem real em construir aplicativos dessa maneira, no Ubuntu, na maior parte.

    
por dobey 02.07.2012 / 16:50
7

Você não obterá algum aumento de desempenho se você recompilar as coisas em seu sistema, a menos que seu Ubuntu seja altamente personalizado, como usar muitas bibliotecas principais de outra fonte.

O truque é que todos os pacotes para o Ubuntu são construídos em um sistema Ubuntu real , que usa os mesmos pacotes no seu . Isso significa que o ambiente de construção é 100% o mesmo sistema, todas as bibliotecas têm ligações idênticas etc, apenas a configuração do usuário é diferente. Por causa disso, quando pacotes binários são construídos, muita otimização agressiva pode ser aplicada, e eles ainda serão válidos em seu sistema. Desta forma, o Ubuntu pode fornecer aos usuários pacotes cujo desempenho é maximizado.

A chance de que os pacotes que você compila por conta própria tenha um desempenho melhor é muito baixa. É até provável que eles estejam trabalhando mais devagar, porque muitas otimizações que não são ativadas por padrão são acionadas manualmente ao criar pacotes para repositórios do Ubuntu.

No que diz respeito à estabilidade, o raciocínio é o mesmo. Como os pacotes são construídos em um sistema Ubuntu, que tem exatamente as mesmas bibliotecas que você (desde que você os tenha obtido de repositórios), não haverá diferença em seu comportamento.

Concluindo, não espere lucros ao criar aplicativos por conta própria.

No entanto, se você usar bibliotecas modificadas personalizadas ou pacotes principais, que não são originários de repositórios do Ubuntu, pode ser benéfico reconstruir aplicativos que os utilizam. No entanto, muito provavelmente, a diferença será tão pequena que será difícil notar, por isso pode não valer a pena.

    
por Rafał Cieślak 02.07.2012 / 17:13
1

Geralmente não, mas existem exceções aqui e ali.

  1. A compilação do Firefox 18 a partir do código-fonte com sinalizadores "-march = native -pipe -O2" pareceu diminuir esses pequenos períodos de falta de resposta durante o carregamento da página, mas nada mudou. Compilando-o com flags "-march = native -pipe -Os" tornou 16.5MB menor na RAM. Ele foi notavelmente mais rápido como conseqüência e parece ocupar menos RAM com mais de 30 abas abertas, mas todas as opções de menu parecem durar para sempre.
  2. Compilando o OpenArena a partir do código-fonte com sinalizadores "-march = native -pipe -O2" aumentou o avg framerate de 28.7 (resultados do timedemo) para 33.4 overinstall from repository. Isso é uma grande melhoria.

Tudo o que eu já compilei a partir da fonte, é mais ou menos o mesmo, ou às vezes quebras / corre como lixo.

    
por OCDtech 13.02.2013 / 18:33