Existe uma maneira de “hackear” o Windows 10 para usar todo o poder da CPU em uma tarefa ou processo?

2

Eu trabalho com aplicativos como o Blender e, de acordo com o "Gerenciador de Tarefas" e "Monitor de Recursos", o Windows usa menos de 40% de CPU (no máximo, com a opção abaixo) e menos de 30% de memória vídeo. Eu não estaria interessado em usar o resto dos recursos para qualquer outra coisa durante a renderização. Existe uma maneira de instruir o Windows a usar todo o seu poder?

Eu tentei mudar a prioridade , não vai melhorar visivelmente.

Eu tentei alterar a afinidade para uma (core) CPU, ela melhorou (dobrou a velocidade de renderização). Alguém conhece algum outro "hack"?

    
por Ignorante 01.08.2015 / 20:45

2 respostas

8

Não. O Windows não está restringindo seus aplicativos

Se o seu aplicativo de renderização tiver apenas um segmento único, ele só poderá usar 100% de uma CPU. Então, por exemplo, em uma máquina de duas CPUs, ela apareceria como 50%. O Windows não pode usar as duas CPUs, porque cabe ao desenvolvedor do aplicativo dividir a tarefa em vários segmentos.

Mas algumas vezes ele terá que esperar enquanto lê o vídeo de entrada e grava o vídeo de saída ... o que explicaria o uso de apenas 40%.

É semelhante para RAM. Presumindo que sua máquina não esteja sofrendo de fome de RAM, o Windows permitirá que um processo use o máximo de RAM que foi referenciado recentemente.

Para tornar a parte da renderização de vídeo ligada ao computador mais rápida, você pode comprar uma CPU mais rápida ou comprar uma placa de vídeo que o aplicativo possa usar para acelerar, fazendo parte do trabalho na GPU. Ou obtenha um aplicativo de renderização diferente, um com multithreading implementado melhor.

Para tornar a E / S mais rápida, coloque os arquivos de entrada, saída e temporários em três unidades diferentes (não apenas letras de unidade. Unidades físicas diferentes). Como os arquivos de entrada são normalmente os maiores, e também são normalmente acessados de forma aleatória, se você estiver combinando várias entradas, coloque-as em sua unidade mais rápida, um SSD, se possível. A velocidade da unidade de saída não importa muito: a taxa na qual você pode renderizar o vídeo é um passo lento para qualquer disco rígido.

    
por 01.08.2015 / 21:16
1

Como Jamie disse, um único aplicativo encadeado só pode usar até 100% de um único núcleo de CPU, totalizando não mais do que 25% de uma CPU quad core ou 50% de uma CPU dual core.

Você mencionou especificamente o Blender como um dos programas que você usa. O Blender é altamente multithread quando renderiza uma cena 3D. No painel Renderizar em Desempenho, você pode aumentar o número de encadeamentos usados. Por padrão, ele usa o mesmo número de threads que os núcleos do seu computador, que geralmente é o melhor. Eu só mudo isso se precisar usar meu computador para outras coisas enquanto eu render, causando a condição que você está perguntando.

Se você está renderizando uma série de imagens para um vídeo ou compondo um vídeo usando o Blender, você pode encontrar gargalos de E / S, já que a unidade está tendo que acessar cada um dos arquivos conforme necessário.

    
por 28.08.2015 / 05:43