Limitar todos os processos a um limite arbitrário pode não ser tão benéfico quanto você poderia pensar inicialmente.
Como um comentário apontou, você pode limitar a CPU ,
mas dependendo do processo, você pode ser melhor servido simplesmente definindo o
nice
- do processo (também conhecido como processo prioridade).
Fazer isso permitirá que o processo seja executado em velocidade máxima quando você estiver lendo um site e não usar nenhuma CPU, mas renda e forneça
caminho para o seu navegador, uma vez que precisa começar a utilizar a (s) CPU (s) para qualquer JavaScript (como um exemplo).
Outra opção é definir a afinidade da CPU do processo. Isso permite que o sistema operacional execute somente o processo em um núcleo de CPU específico, deixando os outros 3 (no seu caso) livre para qualquer outra coisa que possa precisar. Isso é bom quando o processo é um processo de thread único (como uma codificação de vídeo processo de construção de processos ou fontes, por exemplo); você pode definir a afinidade com o núcleo da 1ª CPU e você tem 3 outras em ocioso (até usado isso é).
E também há ulimit
, que você pode usar para definir limites suaves e rígidos ou RAM / CPU (embora isto é
em todo o sistema e não por processo).
Deve-se notar que limitar sua memória RAM pode ter conseqüências não intencionais (como o uso de swap) e, em vez disso, você deve
tente o valor nice
, a afinidade da CPU ou ulimit
para o tempo de CPU antes de limitar a RAM. RAM não é como CPU em que mais uso
isso degradará o desempenho geral do sistema; pelo contrário, o desempenho do sistema tende a aumentar quando mais RAM pode ser usada
e você só deve notar uma diminuição de desempenho se a área de swap tiver que ser usada sobre a RAM (já que a troca é geralmente baseada em disco
e ordens de grandeza mais lentas que a RAM), e se você notar muita área de troca sendo usada com um monte de RAM livre, então há algo mais acontecendo que precisa ser endereçado (como uma configuração do kernel).
Espero que isso possa ajudar.