como suspender outros processos não relacionados para permitir que um processo em interesse ocupe a CPU?

1

É possível

  • primeiro, descobrir quais processos são necessários para executar um processo de interesse e
  • suspender todos os outros processos não relacionados para permitir que o processo em questão use a CPU o máximo possível
  • quando o processo em interesse termina de ser executado, retomar os processos suspensos?

Por exemplo, um processo em interesse é djview

Obrigado.

    
por Tim 18.06.2014 / 02:29

1 resposta

2

Isso deve ser possível (pelo menos em muitos casos) se houver uma conexão permanente. Então você pode verificar /proc/PID/fd para sockets e FIFOs (mais difícil se forem usados arquivos regulares) e encontrar os processos que pertencem a eles.

Mas eu não bloquearia completamente os outros processos; isso parece perigoso. Isso pode causar deadlocks se você cometer um erro (e pode causar outros problemas).

Sugiro descarregar a CPU e a prioridade de E / S de todos os processos, adaptá-los ( renice , ionice ) e restaurá-los depois. Isso pode custar ao processo principal 10% de desempenho, mas você está no lado seguro.

    
por 18.06.2014 / 02:36

Tags