Windowsで高いCPU負荷を出すにはどうすればいいですか?
テスト目的のために、Windows Server 2003で高いCPU負荷を発生させる必要があります。ソフトウェアをインストールすることはできませんが、Windowsが提供しているものを使用するしかありません。
それを実現する最良の方法は何でしょうか?
テスト目的のために、Windows Server 2003で高いCPU負荷を発生させる必要があります。ソフトウェアをインストールすることはできませんが、Windowsが提供しているものを使用するしかありません。
それを実現する最良の方法は何でしょうか?
consume.exe
は Windows Server 2003 Resource Toolkit で簡単にできます。
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...
実行中は全てのコアで100%のCPU時間を使用します。また、(その名の通り)他のリソースを消費することもある。
IntelBurnTest ](http://www.xtremesystems.org/forums/showthread.php?197835-IntelBurnTest-The-new-stress-testing-program) と Prime95 はこれを行うことで知られています。これらは、それぞれのzipを解凍して実行することができるので、インストールの必要はありませんが、「ネイティブでなければならない」という要件を満たしていません。私はオーバークロッカーであり、これらのツールは絶対的なシステムの安定性を確保するために使用しています。
あなたがソフトウェアをネイティブにしたいと思っていることに関しては、Windowsにはそのようなことをするためのツールが付属していません。(無限ループは厄介です。)
“CPU Stress "と呼ばれる1996年からの古い SysInternalsツール がありますが、これは今でも動作します。
これはGUIベースで、最大4つのスレッドをカスタムの強度で実行することができます。これにより、必要な CPU 負荷を調整することができます。目安としては Activity
をMaximum
に設定した1つのスレッドは、約25%のCPUを消費します。つまり、例として 3つのスレッドをMaximumで実行すると、CPU負荷は約75%になります。
CPUSTRES.EXE
はポータブルダウンロードです で、インストールの必要はありません。
コマンドプロンプトでfor /l %a in (0,0,1) do echo a
を実行(無限ループでa
を印刷)すると、ローエンドのモバイルi5のWindows 7上でCPU負荷10~20%でconhost.exe
を起動する効果が観測されています。これらをいくつか並行して実行してみて、例えば以下のようにバッチファイルで実行してみてください。
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
これでCPUが100%で動作している可能性があります。行を追加したり削除したりして調整することができます。
*警告。
*警告: これらは無限ループであり、閉じるのに苦労するかもしれません。最後の数字(有限ループ内の)は、実行時間を調整するために調整することができます。念のために言っておくと、これは基本的には「0から始めて、10000になるまで1ずつ増分していく」という意味で、10000回のループになります。
HyperPi ](http://virgilioborges.com.br/hyperpi/) (複数のコアでSuperPiを実行するためのGUI)は、インストールしなくても、サーバーにコピーしてどこからでも実行できます。高速なものでも、16個の32Mの同時計算を行うことで数時間は全てのコアに負荷をかけることができます。
http://www.jam-software.com/heavyload/
アプリケーションがどのように負荷に対処するかを確認するために、CPUのレベルを上げることで効果的な仕事をしています。
ほとんどの人が行う方法は、負荷のかかる処理を行うものを実行することです - 私はsuperpi を勧められましたが、最新のシステムではhyperpi の方がうまくいくかもしれません。最近のシステムでは hyperpi の方がうまくいくかもしれませんが。
あるいは、folding@home
より長い期間、高負荷を維持する必要がある場合は、 folding@home のようなものを検討してください。
あなたがそのPCのためのインターネットを持っていないか、またはそのCPUテストのためのウェブサイトを覚えていることができない場合、あなたはスクリプトを実行するように感じることができない場合は、Windowsに組み込まれたZIP機能を使用して、同時にファイルやフォルダの束を圧縮することができます。
ファイルまたはフォルダを右クリックし、「送信先」をポイントしてから、「圧縮(zip)フォルダ」をクリック
同じファイル/フォルダを同時に複数回実行することができますが、Windowsまたはプログラムファイルフォルダを使用することをお勧めします。
その後、ファイルを別の場所に解凍し、fcコマンドでファイル比較を行い、すべての計算が正しく行われたかどうかを確認することができます。しかし、標準的なwindowsツールを使って多くのファイルをファイル比較するためのコマンド構文は煩わしいので、この場合は1つの大きなファイルを使うことをお勧めします。
このようなツールをMultiCpuLoadという名前で公開しています。
.NET Framework 2.0、3.5、4.5が必要。 http://www.ristaino.net/Software/MultiCpuLoad