2009-06-05 12 views
0

今のところフルスロットルで動作しているようだが、ファンが回転しているようだが、アクティビティモニターがアプリケーションがプロセッサーの100%を使用していると報告しても、私のマシン上の2つのコアのうちの1つだけを100%使用していると思っています。OS XでアプリケーションのCPU使用率を制御する方法は?

アプリケーションがコンピュータの処理能力の100%またはOSが許す限り使用できるようにOS Xに指示するにはどうすればよいですか?私はこのプロセスの優先順位を設定するために "nice"や "renice"のようないくつかのターミナルコマンドを試しましたが、それでもフルスロットルで実行することはできません。

私はまた、逆のやり方を知りたいと思います。アプリケーションのプロセッサ使用量の制限を設定しています。たとえば、アプリXを20%で実行するように設定します。

これはアプリのコードを変更せずに行うことはできますか?

答えて

3

これに対する答えは、アプリケーションがマルチスレッドであるかどうかによって異なります。これがシングルスレッドアプリケーションの場合、特にマルチスレッド化しない限り、マルチスレッドハードウェアの1つのコアでプロセスが実行されます。これについては何もできませんが、基本的なオペレーティングシステムの機能です。

プログラムがマルチスレッドの場合、別々のコアで異なるスレッドを実行することができます。これにより、プロセス全体の使用率が向上し、100%を超える数値が許可されます。

ただし、使用可能な処理能力の「すべて」を使用することはできませんが、niceで影響を与えることはできます。

プロセッサの使用量を減らすために、niceを使用してプロセスの優先度を下げることができます。あなたがrootであればniceを使ってプロセスの優先度を上げることもできます

+0

反対はどうですか?それはそれがより遅いマシンで実行されていることをシミュレートするアプリに電子ブレーキのように置くことは可能ですか? お返事ありがとうございます。 – victrnava

関連する問題