Diferença de desempenho entre yum e auto-compilação

3

Como a compilação do código-fonte resulta em melhor desempenho do que o uso do yum?

    
por Ganesh.G.Kurup 19.03.2011 / 15:38

3 respostas

4

Bem, com o yum você recebe um programa pré-compilado que se ajusta à distribuição.

Escolher, compilação de origem na mesma distribuição não gerará aumentos de velocidade a menos que você mexa nas opções do compilador ou crie uma versão estática que vincule as bibliotecas ao binário, em vez de precisar vincular as bibliotecas no tempo de carregamento .

Assim, apenas baixar a origem e fazer a compilação não necessariamente resultará em uma execução mais rápida. Em muitos casos, será mais lento. Porque as pessoas que prepararam o pacote são muitas vezes mais proficientes e informadas sobre este pacote específico do que você.

No entanto, se você sabe o que está fazendo, pode configurar o compilador, ou mesmo usar um compilador melhor e editar a base de código, se necessário, para produzir um resultado melhor.

    
por 19.03.2011 / 16:01
3

Quando você compila, o programa é adaptado ao seu hardware e não contém os dados extras necessários para torná-lo portátil. O ganho de performance não é notável, então você não deve se preocupar em compilar suas coisas, a menos que você seja uma aberração nisso.

    
por 19.03.2011 / 15:43
0

Outro ponto são dependências.

Em sistemas do tipo Unix, os programas geralmente chamam uns aos outros e são projetados para serem muito modulares. Assim, por exemplo, o mplayer pode produzir vídeo usando DirectFB ou usando aalib ou libcaca ou usando o framebuffer padrão fbcon, usando saída de vídeo OpenGL, usando X e assim por diante.

Se, por exemplo, você não precisar de uma saída ACII produzida por aalib e libcaca, ao compilar o programa, poderá desativá-los. Por outro lado, o mantenedor do pacote pode decidir que tais opções são muito populares e tê-las ativadas no pacote.

Se você usar o pacote, partes do código desnecessário permanecerão no programa e poderão retardar a execução.

Às vezes, pode piorar. O mantenedor do pacote pode decidir compilar um programa com suporte para algum outro pacote. Então esse pacote é marcado como dependência e precisará ser instalado. Se o seu sistema, por algum motivo, não funcionar bem com esse outro pacote instalado, você não poderá usar o programa que deseja usar devido ao seu suporte opcional para algum pacote. Eu tive esse problema quando o PulseAudio era novo. Ele simplesmente não funcionaria no meu sistema e então eu tive problemas para mudar para o ALSA porque um grande número de pacotes de áudio dependia do Pulse, mesmo que o suporte para o Pulse não fosse crítico para a operação do pacote.

    
por 21.03.2011 / 16:11

Tags