長くて重いコマンドを実行する必要がありますが、同時にデスクトップシステムの応答性を維持したいと思います。
例: btrfs 重複排除、btrfs バランシングなど、これらのコマンドに低い優先順位を付けると、コマンドの完了に時間がかかりますが、システムは常に応答する必要があります。
nice -n 19
を使用するとionice -c 3
問題は解決しますが、最も多くの利点を得るには、どのコマンドが最初に来るべきかわかりません。
オプションA:
nice -n 19 ionice -c 3 btrfs balance start --full-balance /
オプションB:
ionice -c 3 nice -n 19 btrfs balance start --full-balance /
オプションAとBの間に微妙な違いはありますか?彼らはおそらく同等ですか?
答え1
nice
これにより、多くのI / Oが発生した場合は、次のことができます。
ionice -c 3 nice ...
I/O 影響を最小限に抑えます。
逆に、ionice
多くの計算を行う場合は、次のことをしたいと思います。
nice -n 19 ionice ...
CPUへの影響を最小限に抑えます。
しかし、どちらも真実ではなく、すべて非常に単純なコマンドです(プロセスパラメータを変更するためにシステムコールを実行してからコマンドを実行します)。したがって、その違いは無視できるはずです。
どちらも真であれば完全に勝利することはできません。どちらの影響も軽減できません。
答え2
オプションAとオプションBの間に実質的な違いはありません。