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.