プロセスが使用できるCPUパワーを制限することは可能ですか?


16

私は、プロセスにどれくらいのプロセッサパワーを使用できるかを伝える方法はありますか?

問題は、ビデオをArista(ビデオコンバーター)で変換していることです。タスクモニターを見ると、CPUの92%以上を消費しているので、狂ったように走るファンに悩まされています。

20%しかかからないことを(なんとかして)教えてもらえますか?

ありがとう

回答:


20

cpulimitツールがあります(debianリポジトリにもあり、他のディストリビューションにあるはずです)。

使い方はとても簡単です:

cpulimit -p PID -l MAX_CPU_LEVEL

プロセス名、またはバイナリへのフルパスを使用することもできます。詳細はmanページにあります


1
ha-ha :)、完璧に動作します、ありがとう+1
同等の

3
記載されているURLのコードは、かなり前から更新されていません。別のグループがそれを取り上げ、limitcpu.sf.netで開発を続けています。
ジェームズ・スニーリンガー

7

別の方法は、cgroupsと呼ばれる(比較的)新しいカーネルインターフェースを使用することです(wikipediaの記事はこちら)。プロセス/ユーザー/グループが消費できるcpu / memory / io / etcをより詳細に制御できます。


0

探しているものとは異なる場合がありますが、reniceプログラムを使用してプログラムの優先順位を変更し、システム上の他のアプリケーションの速度が低下しないようにすることができます。renice -n 20 -p [pid][pid]がAristaのプロセスIDに置き換えられると、リソース使用量が低下する可能性が高くなり、システムのスローダウンが確実に減少します。


1
OPは、他のアプリケーションの速度を低下させるプロセスについて文句を言ってreniceいませんが、狂ったように動作しているファンについては、後者に対して何もできません。せいぜいビデオコンバーターの速度は低下しますが、競合するプロセス(存在する場合)は以前と同様にCPU負荷を維持します。
-jlliagre
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.