EMERGE_DEFAULT_OPTS

From Gentoo Wiki
Jump to: navigation, search
This page is a translated version of the page EMERGE DEFAULT OPTS and the translation is 77% complete.

Other languages:
English • ‎português do Brasil • ‎русский • ‎中文(中国大陆)‎ • ‎日本語

As variáveis EMERGE_DEFAULT_OPTS são anexadas à linha de comando do emerge. Muitas vezes são usadas para permitir operações concorrentes do emerge através das opções --jobs N e --load-average X.Y, que informam ao Portage quantas compilações de pacotes paralelos podem ser usadas e até qual carga do sistema (load average) o paralelismo pode ser usado.

Casos de uso comum

Parallel builds

Com --jobs N (forma curta: -jN), o emerge roda N serviços ao mesmo tempo (sem um argumento, -j inundará o processador com o maior número possível de serviços e não é recomendado). Um valor típico para N seria igual ao número de núcleos.

Por exemplo, para executar até três serviços em paralelo:

FILE /etc/portage/make.confAtivando 3 compilações de pacotes em paralelo
EMERGE_DEFAULT_OPTS="--jobs 3"

Quando usado com --load-average X.Y (forma curta: -lX.Y), o emerge tentará manter a carga média do sistema inferior à X.Y, um número de ponto flutuante. Se --jobs estiver definido também, então ele será executado até o limite indicado por esse parâmetro.

O valor do load average é o mesmo exibido pelo top ou uptime, e para um sistema N-core, o load average de N.0 seria uma carga de 100%. Outra regra de ouro aqui é definir X.Y=N*0.9 que limitará a carga para 90%, mantendo assim a capacidade de resposta.

Note
Quando MAKEOPTS="-jN" é usado com EMERGE_DEFAULT_OPTS="--jobs K --load-average X.Y" o número de possíveis tarefas criadas seria de N*K. Portanto ambas as variáveis precisam ser definidas com a outra em mente, na medida em que criam até K serviços cada uma com até N tarefas

.

Essas duas configurações são adequadas para longos emerges que incluam vários arquivos de código fonte para aproveitar ao máximo o parâmetro --jobs. Eles também podem causar erros no emerge em alguns casos, então use com cautela e esteja preparado para comentar isso se surgirem problemas.