巨大なファイルの数が少ない2つの大きなディレクトリに対してコピーコマンドを実行すると、cpプロセスが上部のコアの約半分を消費していることがわかります。
51116 root 20 0 110m 876 688 D 43.9 0.0 3:23.83 cp -i -r 165 178 temp
なぜcpプロセスはCPUを消費するのですか?ほとんどの時間をディスクでの待機に費やしていると思います...
Thx、Boaz
パーセンテージを確認すると、画面の上部で、ほとんどが%wa
(待機中)と%id
(アイドル)にあり、%us
(ユーザースペース)にはほとんどない(存在する場合)ことがわかります。
ただし、プロセスラインでは、特定のプロセスを待機するために無駄に費やすすべての時間が、そのプロセスに課金されます。別のCPU負荷の高いプロセスが同時に実行されている場合、コピータスクに影響を与えることなくCPUの大部分を消費します。これは、%id
および%wa
時間を使用するためです。
それは動きを管理しています。これには、ファイルの検索、新しいファイルの作成、およびそれらのコピーが含まれます。これにはすべてCPU時間がかかります。ファイルのバッファリング方法により、コピー操作とは非同期にファイルの書き込みが行われるため、これを非常に迅速に行うことができる場合があります。ファイルがバッファリングされていない場合、ファイルへのアクセス中のCPU使用率は非常に低くなる可能性があります。