内部ドライブと外部ドライブ間でファイルを転送するのに必要な時間を見積もるにはどうすればよいでしょうか?

内部ドライブと外部ドライブ間でファイルを転送するのに必要な時間を見積もるにはどうすればよいでしょうか?

私のノートパソコンの USB ポートは USB 2.0 です。外付けハードドライブは USB 3.0 です。ウィキペディア言う

バス アクセスの制約により、高速信号速度の有効スループットは 35 MB/秒または 280 Mbit/秒に制限されます。

転送する必要があるファイルの合計サイズは 17GB です。

  1. ファイル転送にかかる時間をどのように見積もればよいでしょうか?簡単な計算で、転送にかかる時間は

    17*2^10/35/60 = 8.3 分。

  2. 私はrsyncUbuntu で転送を実行し、転送時間を計っています。

    $ time rsync -a /media/t/2/  ./   
    real    106m45.245s
    user    3m6.938s
    sys     1m25.902s
    

    同じ内部ハード ドライブと外部ハード ドライブ間で、同時に2 つの同様のrsyncデータ転送も実行していることに注意してください。他のすべてのプログラムはアクティブではありませんが、ハード ドライブ間のデータ転送には CPU 時間 (sys + user) があまりかからないと思われます。

    それでも差は大きいです (106 分対 8.3 分)。主にどのような要因が時間に影響するのでしょうか?

ありがとう!

答え1

ここで考慮すべき追加事項がいくつかあります。

  • ファイルの数。1 つの大きなファイルを転送する場合と、多数のファイルを転送する場合では、転送方法が大きく異なります。これは、各ファイルの読み取りと書き込みの追加操作と遅延が原因です。
  • 関係する両方のディスクのパフォーマンス、シーク時間、スピンドル速度など。

多くの変数が絡んでいるため、確実な計算に到達するのは困難です。最大のボトルネックがどこにあるかを確認したい場合は、チェーンの各ステップのパフォーマンステストを確認する必要があります。USB2 インターフェイスはどちらよりも遅くなる可能性がありますので、主に内部ディスクと外部ディスクの両方のパフォーマンステストに焦点を当てます。ATTO は良い出発点です。ATTOベンチマーク

関連情報