tempo de leitura:

Se você possui um computador com suporte SMP (Symmetric MultiProcessor) é possível compilar os programas que utilizam o make (a grande maioria, se não todos) utilizando dois ou mais processadores. Para isso digamos que a aplicação em questão possui um arquivo Makefile, edite-o e procure pela linha:

MAKE=make

ao final da linha adicione a opção -jN, onde N é o número de jobs (ou processos de compilação) que serão executados simultaneamente.

É aconselhável que N seja definido como o número de processadores da máquina +1, ou seja, digamos que você possui uma máquina com 2 processadores Dual Core, então você poderia alterar a linha para:

MAKE=make -j5

Caso o arquivo Makefile não possua a entrada MAKE, então você poderá adicionar a opção -j diretamente ao executar o make:

# ./configure
# make -j5

Se você possui muita memória RAM/Swap, pode testar a opção -j sem nenhum número, desta forma o make não irá limitar o número de atividades simultâneas.

É possível também calcular a duração das compilações para avaliar qual o melhor valor para a opção -j, para isso utilize o comando time. Por exemplo:

# ./configure
# time make

Efetuei um teste compilando a aplicação RRDTools em um servidor Dual Xeon. A compilação normal durou (real) 1m38s. Já compilando com a opção -j5 a duração foi para 46s ou seja 54% mais rápido.

Blog Logo

José Morelli Neto


Publicado em

Image

Notas do Neto

De tudo um pouco...

Ir para início