Eu criei uma fatia personalizada (agora eu tenho 4 fatias de usuário, sistema, máquina, importante) e atribuí um grande número a CPUShares . O sistema se sentiu realmente indiferente sob alta carga nessa fatia, o que parece ser lógico considerando o enorme valor CPUShares .
Mais tarde, eu defini CPUShares para um valor realmente pequeno ( 64 comparando com o padrão 4096 para user.slice e system.slice ) E para ser honesto, o sistema também pareceu não responder, talvez não muito, mas ainda assim foi muito chato. Assim, como o resultado da carga da CPU de important.slice foi minúsculo em comparação com outras fatias (cerca de 11%), mas tudo pareceu terrivelmente indiferente.
O que quero dizer com falta de resposta é que o mesmo aplicativo em execução no user.slice, apesar de usar muito mais processos afetados pela CPU em user.slice , é significativamente menor do que o mesmo processo em execução em important.slice . Por exemplo:
A execução do renderizador do Blender em user.slice em todos os 8 núcleos com carga de 100% não fez o sistema parecer não responder a todos. Experiência do usuário permaneceu muito boa e o PC permaneceu capaz de realizar outras tarefas.
Executando o renderizador do Blender em important.slice com baixo CPUShares ao utilizar apenas 11% da CPU fazendo todo o sistema ficar muito lento, até tty estava atrasado.
É claro que CPUAccounting está ativado em todos os lugares.
Tags performance systemd linux tuning