[Linux] Fixando um processo em um núcleo do processador

O título explica o conteúdo desta dica, a principio precisa instalar o pacotes schedutils em distribuições Debian-like nas de família Red Hat o nome do pacote é: util-linux-ng, ambos podem ser instalados rapidamente com um apt-get ou via yum, ou obtidos neste link.

Após instalar precisamos pegar o PID do processo, com um simples:

$ ps aux| grep -i processo

Com pid em mãos só executar:

$ taskset -c nucleo -p PID

O núcleo é o numero de identificação do núcleo, cada núcleo do processador possui um id, começando em 0 (zero) indo até total de núcleo -1, ou seja se você tem um core 2 duo, você terá o núcleo 0 e o núcleo 1. Por exemplo o PID do processo e 1234 e o núcleo que você seja fixar a aplicação e o segundo núcleo do core 2 quad, então usamos:

taskset -c 1 -p 1234M

Um adento o comando taskset precisa ser executado com a mesma permissão que o processo está sendo executado, se o processo que deseja executar o taskset está sendo executado com o root, então precisará executar o taskset com o root.

Também e possível iniciar um processo com um núcleo fixado, por exemplo: você quer fixar Firefox em um núcleo do processador, bastaria utilizar:

taskset -c 1 firefox

Rápido e pratico. As vantagens da utilização deste mecanismo são diversas, por exemplo obtive uma melhora significante com o Firefox ao fixá-lo em um núcleo; embora ainda não tenha descoberto o motivo para isso, a melhoria foi relevante.

Outra vantagem é interessante e que nem toda aplicação foi desenvolvida para utilizar vários núcleos então podemos fixa-las em um núcleo para evitar desperdiçar os núcleos ociosos.

O próximo texto, será uma continuação do sed, e tenha uma ótima sexta-feira.

[]‘s

Textos Relacionados:

Deixe um Comentário

2 Comentários.

  1. fico bom só falto explicar como taskset funciona ^^”entender a source dele como implementar ideias no seu code xD” , ó sim no quarto paragrafo falto um “o” no “núcle”

Deixe um Comentário

SEO Powered by Platinum SEO from Techblissonline