より高い優先度でプロセスを実行する


14

mplayerIOプロセスを含む他のプロセスよりも高い優先度で実行したい。どうやってやるの?


この質問に対する、Unixにまたがるさまざまな回答はありません。一般的には、使用しているOS(Linuxのディストリビューションを含むが、ここではまったく重要ではありません)を説明する方が適切です。linuxタグを追加しました。使用していない場合は変更してください。
ジル 'SO-悪であるのをやめる'

なぜmplayerの優先度を上げようとしているのか尋ねても構いませんか?mplayerの優先度を上げる前に問題があったので、mplayerがポストプロダクションクリーニングを実行してCPU時間を使い尽くし、最終的にネットワークとして停止するため、結果は私が達成しようとしていたものと反対でしたより多くのコンテンツを取得するために息を切らしてから、mplayerはネットワークを待機するために再び停止するために、生き返ります。
キラーミスト

私はこの原因を尋ねました、私はmplayerを通して映画を再生しています。ネットワーク経由で数GBのファイルをダウンロードしようとするたびに。Mplayerは、プレイ中にスライスとジャークを観察します。
SHW

回答:


16

niceness(CPUバウンド)を設定するには、を使用しますnice。IO niceness(IO bound)を設定するにはionice。詳細については、それぞれのマニュアルページを参照してください。次のように一緒に使用できます。

ionice -c 2 -n 0 nice -n -20 mplayer

注:定義できる最低レベルのナイスネス(低いほど好ましい)は、によって決定されlimits.confます。私のコンピューターでは、ファイルはにあります/etc/security/limits.conf


1
ioスケジューラクラスに言及するのは良いことです。なぜなら、それが大きな要因になる可能性が高いからです。中間-c2スケジューリングクラスの場合、プロセスはデフォルトでniceレベルでソートされるため、価値のあるものはありません。したがって、指定したコマンド例は実際には必要ありません。mplayerを-c1リアルタイムクラスに入れてみることができます。(ルートアクセス)
。-mattdm

7

一般に、非rootユーザーとしては、タスクの優先度を下げることはできますが、増やすことはできません。したがって、1つのアプローチは、他のすべての優先順位を下げることです。または、優先度を処理するシステムレベルで何かを設定できます。

比較的最新のLinuxディストリビューションを使用している場合、最も強力な方法はコントロールグループを使用することです。これはまだ初期段階であるため、基本的にすべてを手動で構成する必要がありますが、要するに、カテゴライザーを構成して異なるプロセスを異なるCPU制御グループに配置し、mplayerプロセスにより多くのCPUシェアを付与することです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.