pigzを使用して、約50GBの大きなディレクトリを圧縮しています。私はec2インスタンスをRedHatで使用しています。インスタンスタイプはm4.xlargeです.4つのCPUがあります。圧縮がすべてのCPUを使い果たしてしまいます。パフォーマンスが向上します。それは私の期待を満たしていませんでした。pigzを最適化する方法は?
私が使用していますコマンド:
tar -cf - lager-dir | pigz > dest.tar.gz
しかし、圧縮が実行されて、私は私のCPUの状態を確認するためにmpstat -P ALL
を使用し、結果は唯一に近い、他の3つのCPUのアイドル%の多くを示してい2%は、各CPUのユーザー空間プロセスによって使用されます。
また、pigzがCPUの10%未満しか使用していないことを確認するためにtop
を使用しようとしました。
-p 10
を試してプロセス数を増やすと、数分の使用率は高くなりますが、出力ファイルが2.7GBに達した時点で下がります。
私はすべてのCPUを圧縮に使用していますので、最高のパフォーマンスを得るためにすべてのリソースを十分に活用したいのですが、どうすればそこに着くことができますか?