Como forçar uma aplicação Windows a usar um Core específico
São raros os computadores de hoje em dia que não têm mais de núcleo, conhecidos na expressão inglesa com0 core. Ao utilizar um processador com as características de multi-core torna-se possível definir na perfeição que certos programas corram num determinado CPU por nós definido.
A verdade é que as aplicações actuais são pensadas aquando do desenvolvimento na sua maioria para tirar partido dos vários núcleos para aumentar, assim, a velocidade de execução e eficiência global distribuindo de forma mais equitativa possível a carga por todos eles. Mas e se pretendemos que uma determinada aplicação do Windows 8 corra num determinado núcleo? Tudo começa no separador Desempenho depois de clicarmos com o botão direito do rato na barra de sistema e escolhermos o Gestor de Tarefas.
Esta distribuição de carga entre todos os núcleos pode ser uma grande mais-valia. Torna-se verdadeiramente útil, por exemplo, no caso de como alguns dos antigos programas terem sido desenhados na sua arquitectura, ou seja, para funconarem num só núcleo do CPU. Em alternativa podemos querer que uma aplicação específica seja executada de forma a que os demais cores não se encham de fluxo e permitam um trabalho mais fluído com os demais núcleos, por exemplo, o desfragmentador de disco no Windows ocupa muitos recursos do CPU durante a execução o que leva a uma inevitável lentidão do CPU. Se optarmos por utilizar um núcleo específico podemos manter o normal funcionamento do programa e continuar a fazer outras coisas enquanto o mesmo corre em segundo plano.
Vejamos então como proceder com a alteração dos valores de afinidade de maneira a forçar uma aplicação específica do Windows para usar um determinado CPU. Antes de prosseguir os utilizadores devem ter em conta que que a alteração dos valores de afinidade é uma operação avançada e o facto de ficar mal configurada pode pode causar que as aplicações deixem de correr correctamente.
Assim, ainda no Gestor de Tarefas, temos de abrir o separador Detalhes onde veremos todas as aplicações a correr actualmente, bastando clicar com o botão direito do rato sobre a aplicação que pretendemos alterar o valor de afinidade, como se pode ver na figura abaixo:
Caso ainda não tenha decifrado como abrir a janela do Gestor de Tarefas pode sempre usar a combinação de teclas "Ctrl + Shift + Esc".
Depois de encontrar o processo pretendido seleccionamos a opção definir afinidade. No nosso caso escolhemos o programa do AbelhasBox. Por padrão, cada processo utiliza todos os núcleos disponíveis. Para forçar o processo de usar um core específico basta desmarcar todos os cores que não pretendemos que o CPUs usem e depois clicar em Ok.
Para confirmar mais tarde o desempenho dos núcleos de forma a verificar efectiva rentabilidade podemos passar para o separador Desempenho e clicar no link Monitor de Recursos Aberto. No separador CPU ver o desempenho de todos os seus núcleos de CPU.
A saber que as alterações que efectuamos são temporárias, ou seja, o processo ou o programa irá utilizar de novo todos os núcleos logo após corrermos de novo a aplicação, logo não existe a preocupação sobre quaisquer mudanças permanentes.
Sabendo alterar a quantidade núcleos do CPU para uma determinada aplicação é tudo uma questão de experimentarmos as várias aplicações de forma a tentar melhorar o fluxo de trabalho e produtividade.
Esta dica foi elaborada com base no Windows 8 e não testada noutros sistemas operativos da Microsoft.
Este artigo tem mais de um ano
Muito interessante. Mesmo com um processador com 4 núcleos, vale a pena testar deixar o anti-vírus em apenas 1 núcleo. Garantindo maior performance em jogos online sem perder a segurança.
Essa era básica só os distraídos é que ainda nao tinham encontrado essa opção 🙂
Mas dicas quer para windows quer para linux e android são sempre bem vindas 😀
========
Já repararam que as redes ad-hoc não dão para guardar? (pelo menos o windows não as guarda como faz com as de infraestrutura).
No Windows 7 também funciona!
Boa dica 😉
Cumps
Useless