Como alocar manualmente núcleos de CPU para um programa no Windows 10

O Windows 10 tem várias opções que você pode usar para obter um melhor desempenho. Os recursos de Afinidade de Processador e Prioridade de CPU do Windows 10 são alguns dos mais engenhosos e, embora não sejam uma solução mágica para aumentos instantâneos de desempenho, eles farão a diferença se você tiver um hardware antigo.

Dada a sensibilidade dos processos, você só deve definir a afinidade do processador e a prioridade da CPU se estiver confortável com as coisas que estão indo mal. No entanto, se você deseja ajustar seu sistema para ser o melhor possível, vamos explorar como definir a afinidade do processador e a prioridade da CPU no Windows 10.

O que é afinidade de processador no Windows 10?

Cada sistema operacional tem um algoritmo de agendamento subjacente. O algoritmo de escalonamento é responsável por distribuir recursos do computador para diferentes processos ou threads. No Windows 10, pode haver centenas de processos em execução ao mesmo tempo.

A CPU não pode lidar com todos esses processos simultaneamente, então o algoritmo de escalonamento gerencia esses processos e atribui a eles o tempo de CPU com base em vários fatores.

Como tal, a Afinidade do Processador pode ser considerada como um usuário interferindo no agendador. Normalmente, o algoritmo de escalonamento do Windows decide qual processo será executado em qual núcleo da CPU. Se você definir a Afinidade do Processador manualmente, pode forçar um processo ou thread a ser executado em qualquer núcleo de sua preferência.

Simplificando, a afinidade do processador permite que você atribua um ou mais núcleos da CPU a quaisquer processos ou threads de sua escolha . Os processos ou threads para os quais você definiu a afinidade serão executados apenas nos núcleos especificados.

No entanto, isso não tornará os núcleos exclusivos apenas para esses processos. O Windows ainda pode atribuir processos diferentes a esses núcleos. Definir a afinidade do processador afeta apenas os processos que você escolher, fazendo-os rodar apenas nos núcleos atribuídos.

O que é prioridade de CPU no Windows 10?

Como explicamos acima, pode haver centenas de processos ou threads competindo por tempo de CPU a qualquer momento no Windows 10. Para garantir que processos e threads importantes tenham acesso prioritário aos recursos da CPU, o agendamento do Windows atribui prioridade a cada processo e thread rodando no sistema operacional.

Por exemplo, o algoritmo de agendamento do Windows dá alta prioridade aos processos críticos do Windows, como Sistema e Windows Explorer. Se esses processos estiverem em uma fila, eles terão acesso à CPU antes dos processos de baixa prioridade.

Relacionado: Processos do Gerenciador de Tarefas do Windows que você nunca deve matar

Portanto, ao definir manualmente a Prioridade da CPU de um processo como alta, o agendador do Windows garantirá que o processo tenha acesso prioritário aos recursos da CPU.

Finalmente, a prioridade da CPU é bem diferente da afinidade do processador. Onde definir a Prioridade da CPU de um processo informa ao planejador como tratar esse processo, definir a Afinidade do Processador bloqueia um processo para núcleos / núcleos específicos da CPU. Com a Afinidade do processador definida, mesmo se o processo tiver alta ou baixa prioridade, ele será executado em núcleos / núcleos especificados.

Por que você pode querer atribuir programas a núcleos de CPU específicos

Um dos maiores problemas que a computação moderna tem que enfrentar é um grande número de programas de thread único. Mesmo em 2021, onde a maioria dos processadores são quad-core ou superior, alguns programas só tiram proveito de um dos muitos núcleos disponíveis.

Relacionado: Intel Core i3 vs. i5 vs. i7: Qual CPU você deve comprar?

Isso representa um problema para os agendadores de sistemas operacionais modernos: como você agenda processos de thread único em processadores multi-thread sem quebrar a compatibilidade?

Na maioria das vezes, os agendadores modernos agendam com eficiência processos de thread único em CPUs modernas. Mas há momentos em que um programa legado é interrompido devido à compatibilidade insuficiente. É aqui que a configuração da afinidade do processador pode ajudar.

A afinidade do processador restringe os processos a serem executados nos núcleos de CPU especificados. No caso de programas legados de thread único, você pode restringir esses processos a um núcleo da CPU configurando Afinidade do processador.

Além disso, pessoas com máquinas mais fracas também podem se beneficiar ao definir uma alta prioridade para suas tarefas importantes. Por exemplo, se você for um editor de vídeo, pode definir seu programa de renderização com alta prioridade antes de iniciar uma renderização de vídeo. Dessa forma, quando você deseja renderizar um vídeo, o Windows sabe que deve dedicar a maior parte de sua atenção à agitação do seu vídeo.

Como definir afinidade e prioridade de CPU

Para definir a afinidade do processador e a prioridade da CPU, você terá que abrir o gerenciador de tarefas e continuar a partir daí.

Portanto, abra o Gerenciador de Tarefas clicando com o botão direito na barra de tarefas do Windows 10 e selecionando Gerenciador de Tarefas . Em seguida, navegue até o processo para o qual deseja definir a afinidade.

Em seguida, clique com o botão direito no processo e escolha Ir para detalhes .

O processo que você escolher será destacado no novo painel que aparece. Clique com o botão direito no processo destacado e selecione Definir afinidade . O painel Afinidade do processador aparecerá agora.

No painel Afinidade do processador, desmarque os núcleos da CPU nos quais você não deseja que o processo seja executado. Depois, clique em Ok . A afinidade do processador agora será definida e o processo que você escolheu será executado apenas nos núcleos de CPU selecionados.

Para definir a Prioridade da CPU, clique com o botão direito em qualquer processo no Gerenciador de Tarefas e selecione Ir para os detalhes .

Em seguida, clique com o botão direito do mouse no processo destacado e clique em Definir prioridade .

Agora, escolha a prioridade na lista que aparece. Se você deseja que seu processo seja executado assim que necessário, selecione Tempo real .

No entanto, a escolha do Realtime resultará em outros processos do sistema possivelmente críticos esperando na fila. Isso pode levar a uma desaceleração geral do sistema nos casos mais brandos e a uma falha completa do sistema no pior dos casos, portanto, tome cuidado ao definir um processo como prioridade em tempo real.

Alta prioridade, por outro lado, é mais seguro selecionar, contanto que você não coloque muitos processos em alta prioridade.

As outras opções da lista, nomeadamente Acima do normal , Normal , Abaixo do normal e Baixo , são autoexplicativas.

Não defina afinidade de processador e prioridade de CPU se você não souber o que está fazendo

Você só deve definir a afinidade do processador e a prioridade da CPU se souber o que está fazendo. O aumento no desempenho, embora importante em alguns casos, não compensa os problemas que você pode enfrentar se algo der errado. De lentidão a travamentos aleatórios do sistema, definir a afinidade e a prioridade deve ser apenas sua última opção.

A afinidade do processador e a prioridade da CPU não são as únicas maneiras de aumentar o desempenho do Windows 10. Há uma infinidade de truques de hardware e software que você pode usar para obter algum desempenho de seu hardware antigo.