2012-03-03 13:18:23 +0000 2012-03-03 13:18:23 +0000
79
79

Como posso produzir uma elevada carga de CPU no Windows?

Para fins de teste preciso de gerar uma carga de CPU elevada  num Windows Server 2003. Não posso instalar qualquer software mas tenho de me contentar com o que o Windows fornece.

Qual seria a melhor maneira de o conseguir?

Risposte (13)

68
68
68
2012-03-03 17:04:09 +0000

consume.exe do Windows Server 2003 Resource Toolkit pode fazer isto facilmente.

C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\x64>consume -cpu-time -time 5
Consume: Message: Time out after 5 seconds.
Consume: Message: Successfully assigned process to a job object.
Consume: Message: Attempting to start 256 threads ...
................................................................................
................................................................................
................................................................................
................
Consume: Message: Sleeping...

Utiliza 100% do tempo de CPU em todos os núcleos, desde que funcione. Pode também consumir outros recursos (como o nome implica).

41
41
41
2012-03-03 17:20:32 +0000

O seguinte ficheiro de lote fá-lo:

@echo off
:loop
goto loop

No entanto, se tiver vários núcleos, tem início várias instâncias.

Para parar, prima Ctrl+C na consola.

34
34
34
2012-03-03 15:21:59 +0000

IntelBurnTest e Prime95 são conhecidos por fazerem precisamente isto. Não requerem realmente instalação, pois podem ser executados desempacotando os seus respectivos fechos de correr, mas não cumprem o seu requisito “deve ser nativo”. Sou um overclocker, e estas são as ferramentas que utilizo para assegurar a estabilidade absoluta do sistema, elas _gerarão a carga máxima a partir do seu computador.

Quanto ao seu desejo de que seja uma peça de software nativa - o windows não vem realmente com as ferramentas para fazer tal coisa, excepto talvez o ficheiro de lote acima referido, que será uma confusão para lidar se ficar sem fios. (Os loops infinitos podem ser confusos).

29
29
29
2012-03-03 16:14:11 +0000

Um loop apertado em VBS sem E/S fá-lo-á. Vai precisar de tantos processos como núcleos. O seguinte usará 100% no meu Win2k3 VM, ou 50% no meu host dual-core (100% se eu lançar 2)

c:\test\>copy con thing.vbs
While True
Wend
^z
c:\test\>thing.vbs

Terá de matar o wscript.exe no gestor de tarefas para o terminar.

9
9
9
2015-12-03 10:57:52 +0000

CPUSTRES.EXE

Existe uma antiga ferramenta SysInternals de 1996 chamada “CPU Stress” que ainda funciona. (Acabei de a experimentar no meu portátil Windows 10.)

Carga de CPU personalizada

É baseada em GUI e permite correr até quatro threads com intensidades personalizadas. Isto permite-lhe afinar a carga de CPU desejada. Como regra geral: Um fio com Activity definido para Maximum consumirá cerca de 25% de CPU. Por isso, como exemplo: Se executar três threads no máximo, a sua carga de CPU vai para cerca de 75%.

Portável

CPUSTRES.EXE é um download portátil e não requer instalação.

5
5
5
2012-03-03 13:41:20 +0000

Executando for /l %a in (0,0,1) do echo a num prompt de comando (impressão de loop infinito a) tem o efeito observado de iniciar um conhost.exe rodando a 10-20% de carga de CPU no Windows 7 num i5 móvel de gama baixa. Poderia tentar executar vários destes em paralelo, por exemplo o seguinte num ficheiro de lote:

start for /l %%a in (0,0,1) do echo a
start for /l %%a in (0,0,1) do echo a
start for /l %%a in (0,0,1) do echo a
start for /l %%a in (0,0,1) do echo a
start for /l %%a in (0,0,1) do echo a
start for /l %%a in (0,0,1) do echo a
start for /l %%a in (0,0,1) do echo a
start for /l %%a in (0,0,1) do echo a
start for /l %%a in (0,0,1) do echo a
start for /l %%a in (0,0,1) do echo a

Que poderia ter o seu CPU a funcionar a 100%. As linhas podem ser adicionadas/removidas para ajustar.
Aviso: Estes são loops infinitos, que podem ter dificuldades em fechar. Os números dentro dos parênteses podem ser substituídos, por exemplo, (0,1,10000), por um loop finito. O último número (no laço finito) pode ser ajustado para ajustar o tempo de funcionamento. Caso esteja a pensar, significa basicamente “começar no número 0, incrementar em 1 até atingir 10000”, o que se traduz em 10000 ciclos de laço.

5
5
5
2012-03-03 19:44:44 +0000

HyperPi (GUI para executar SuperPi em vários núcleos) pode ser executado sem instalação apenas copiá-lo para o servidor e executá-lo a partir de qualquer local. Mesmo em algo rápido é possível carregar todos os núcleos durante algumas horas fazendo, digamos, 16 cálculos simultâneos de 32M locais.

4
4
4
2014-02-07 12:08:49 +0000

Descobri recentemente e posso recomendar a versão gratuita de HeavyLoad: http://www.jam-software.com/heavyload/

Faz um trabalho eficaz a bombear os níveis de CPU para ver como as aplicações lidam sob coacção.

1
1
1
2016-01-26 11:27:45 +0000

Rápido, fácil, PowerShell

while ($true){}

Um loop infinito sem entradas ou saídas; semelhante à resposta da Quantum, se tiver vários núcleos, tem de iniciar várias instâncias de PowerShell executando este script

1
1
1
2012-03-03 14:30:49 +0000

A forma como a maioria das pessoas o faz é executar algo que faz uma carga de processamento - recomendaram-me superpi , embora hyperpi possa funcionar melhor para um sistema moderno. Calcule um valor absurdamente grande de pi, e irá efectivamente executar o processador com carga completa.

Em alternativa pode executar StressCPU que se baseia em dobrar@home

Se precisar de manter cargas elevadas durante períodos de tempo mais longos, considere algo como dobrar@home

1
1
1
2013-07-01 06:12:13 +0000

Se não tiver Internet para esse computador ou não se lembrar do website para esse teste cpu, e não lhe apetecer guião, pode usar as janelas construídas em zip para comprimir um monte de ficheiros ou pastas um monte de vezes simultaneamente.

Clique com o botão direito do rato no ficheiro ou pasta, aponte para Enviar Para, e depois clique em Pasta Comprimida (zipada)

Pode fazer os mesmos ficheiros/pasta várias vezes ao mesmo tempo, sugiro que utilize as pastas das janelas ou ficheiros de programas.

Pode então descomprimir os ficheiros para outro local e fazer uma comparação dos ficheiros com o comando fc para verificar se todos os cálculos ocorreram correctamente. Embora eu sugira que se utilize um único ficheiro grande para isto, a sintaxe do comando para comparação de muitos ficheiros com ferramentas padrão do windows é irritante.

0
0
0
2012-03-06 22:07:54 +0000

Use o “calc” incorporado para calcular 10000! (10.000 factoriais). Use duas ou três instâncias para maximizar um Multi-core.

0
0
0
2019-01-02 13:44:48 +0000

Eu publico uma ferramenta com o nome MultiCpuLoad.