Como posso produzir alta carga de CPU no Windows?

71

Para fins de teste, preciso gerar alta carga de CPU em um Windows Server 2003. Não consigo instalar nenhum software, mas tenho que me contentar com o que o Windows oferece.

Qual seria a melhor maneira de conseguir isso?

    
por Morgon 03.03.2012 / 14:18

12 respostas

63

consume.exe do Windows Server 2003 Resource Toolkit pode faça isso 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...

Usa 100% do tempo de CPU em todos os núcleos, desde que seja executado. Também pode consumir outros recursos (como o nome indica).

    
por 03.03.2012 / 18:04
35

O seguinte arquivo em lote faz isso:

@echo off
:loop
goto loop

No entanto, se você tiver vários núcleos, inicie várias instâncias.

Para parar, pressione Ctrl + C no console.

    
por 03.03.2012 / 18:20
34

IntelBurnTest e Prime95 são conhecidos por fazer exatamente isso. Eles não precisam realmente de instalação, pois podem ser executados descompactando seus respectivos zips, mas ele não atende ao requisito "deve ser nativo". Eu sou um overclocker, e estas são as ferramentas que eu uso para garantir a estabilidade absoluta do sistema, elas irão gerar o máximo de carga do seu computador.

Quanto à sua necessidade de ser um software nativo - o Windows realmente não vem com as ferramentas para fazer isso, exceto talvez pelo arquivo de lote acima, que será uma bagunça se vai enlouquecer. (Loops infinitos podem ser confusos.)

    
por 03.03.2012 / 16:21
27

Um loop apertado no VBS sem E / S fará isso. Você precisará de tantos processos quanto núcleos. O seguinte usará 100% na minha VM Win2k3, ou 50% no meu host dual-core (100% se eu iniciar 2)

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

Você terá que matar wscript.exe no gerenciador de tarefas para finalizá-lo.

    
por 03.03.2012 / 17:14
5

HyperPi (GUI para rodar o SuperPi em múltiplos núcleos) pode ser executado sem instalar basta copiá-lo para o servidor e executá-lo de qualquer local. Mesmo em algo rápido, você pode carregar todos os núcleos por algumas horas, fazendo 16 cálculos simultâneos de 32 milhões de lugares.

    
por 03.03.2012 / 20:44
4

CPUSTRES.EXE

Há um antigo Ferramenta SysInternals de 1996 chamada "CPU Stress" que ainda funciona. (Eu apenas tentei no meu laptop Windows 10.)

Carga de CPU personalizada

É baseado em GUI e permite que você execute até quatro threads em intensidades personalizadas. Isso permite que você ajuste a carga da CPU desejada. Como regra geral: um thread com Activity definido como Maximum consumirá cerca de 25% da CPU. Então, como um exemplo: se você executar três threads no máximo, a carga da sua CPU vai para cerca de 75%.

Portátil

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

    
por 03.12.2015 / 11:57
3

A execução de for /l %a in (0,0,1) do echo a em um prompt de comando (impressão em loop infinito a ) tem o efeito observado de iniciar um conhost.exe em execução com carga de CPU de 10-20% no Windows 7 em um i5 móvel de baixo custo. Você pode tentar executar vários deles em paralelo, por exemplo, o seguinte em um arquivo em lotes:

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

Isso pode ter sua CPU funcionando a 100%. Linhas podem ser adicionadas / removidas para ajustar.
Aviso: Essas são loops infinitas, que você pode ter dificuldade em fechar. Os números dentro dos parênteses podem ser substituídos, por exemplo. (0,1,10000) , para um loop finito. O último número (no loop finito) pode ser ajustado para ajustar o tempo de execução. Caso você esteja se perguntando, basicamente significa "iniciar no número 0, incrementar em 1 até atingir 10000", o que significa 10000 ciclos de loop.

    
por 03.03.2012 / 14:41
3

Eu descobri recentemente e posso recomendar a versão gratuita do HeavyLoad:

link

Faz um trabalho efetivo em bombear os níveis de CPU para ver como as aplicações lidam sob coação.

    
por 07.02.2014 / 13:08
1

A maneira como a maioria das pessoas faz isso é executar algo que faz uma carga de processamento - foi recomendado superpi , embora O hyperpi pode funcionar melhor para um sistema moderno. Calcule um valor absurdamente grande de pi e ele executará o processador com carga total.

Como alternativa, você pode executar StressCPU , que é baseado em folding @ home

Se você precisar manter cargas altas por períodos mais longos, considere algo como folding @ home

    
por 03.03.2012 / 15:30
1

Se você não tem internet para esse PC ou não consegue lembrar o site para esse teste de CPU, e você não se sente como script você pode usar o recurso de zip construído em janelas para compactar um monte de arquivos ou pastas um monte de vezes simultaneamente.

Clique com o botão direito do mouse no arquivo ou na pasta, aponte para Enviar para e clique em Pasta compactada (zipada)

Você pode fazer os mesmos arquivos / pastas várias vezes ao mesmo tempo, sugiro usar as pastas de arquivos do Windows ou do programa.

Você pode descompactar os arquivos para outro local e comparar um arquivo com o comando fc para verificar se todos os cálculos ocorreram corretamente. Embora eu sugira que você use um único arquivo grande para isso, pois a sintaxe de comando para comparação de arquivos de muitos arquivos com ferramentas padrão do Windows é irritante.

    
por 01.07.2013 / 08:12
1

Rápido, fácil, PowerShell

while ($true){}

Um loop infinito sem entradas ou saídas; semelhante à resposta do Quantum, se você tiver vários núcleos, terá que iniciar várias instâncias do PowerShell executando esse script

    
por 26.01.2016 / 12:27
0

Use o "calc" embutido para calcular 10000! (10000 fatorial). Use duas ou três instâncias para maximizar um multi-core.

    
por 06.03.2012 / 23:07