このユーティリティを使用してLinuxでzip
ファイルを圧縮すると、CPU使用率は100%に達します。
なぜCPU使用率がそれほど高いのかを説明するのに役立つ人はいますか?
私は次のコマンドを使用しています:
zip file_name *.xml
答え1
特定の使用量を超えないように、zipコマンドのCPU使用量を制限できます。たとえば、zipコマンドがCPUの30%以上を使用しないようにするには、次のコマンドを使用できます。
cpulimit -e zip -l 30
答え2
ファイルの圧縮の可能性が高いほど、実際にはI / Oではなく圧縮(CPUバインディング)を実行するため、圧縮にはより多くのCPUを使用します。 XMLファイルは高い長くて繰り返し特性があるため圧縮可能です。
答え3
タスクが中断されず、多くのCPUパフォーマンスが利用可能な場合、CPU使用率は高くなります。次のように言えます。高いCPU使用率は、コンピュータの速度を簡単に高めることができるので良いです。
簡単に圧縮できるファイルを圧縮する(たとえば、同じテキスト行を100,000回繰り返す)、非常に高速なCPUで実行し、非常に遅いディスク(またはネットワークストレージ)からファイルをロードすると、CPU使用率が低下します。しかし、CPUがI/Oを待っているのでこうなります。ストレージが非常に高速でCPUが非常に遅い場合、CPU時間に比べてI / Oレイテンシが減少するため、CPU使用率が増加します。
CPU使用率が100%未満であることは、CPUに未使用のリソースがあることを意味します。これは一般的に望むものではありません。 CPU使用率の高いプロセスはI / Oボトルネックに影響を与えないため、システム内の他のプロセスに適しています。
複数のプロセスが実際にCPU時間を競っている場合(各プロセスはCPUの100%を使用できます)、どのプロセスがより遅く実行されるかはCPUの優先順位によって異なります。 CPU 優先順位は、 、 を使って確認しps
てtop
設定できます。 cgroupは、プロセスグループの優先順位を指定する強力な概念です。top
nice
renice