
外付けハードドライブを持っています。今日はより大きいファイル(約 230 MB のフィルムでした)が最初に約 70% まで急上昇しました。減少し始めました。
- 最初は約56MB/秒でした
- その後、速度は急速に 23 MB/秒まで低下しました (ファイル転送は 70% 完了)
- その後、速度は徐々に低下し、約 2 MB/秒になりました (ファイルは 90% 完了していました)
- 転送が完了すると、速度は 1.5 MB/秒をわずかに上回りました。
図で説明すると: 減少の曲線を描くと、おそらく対数関数のグラフに似たものになるだろう。
私が本当に聞きたいのは、「なぜこのようなことが起こるのでしょうか?" そして "回避策はありますか?「
ありがとう!
答え1
考えられる理由:
- ほとんどのオペレーティングシステムは、データをすぐにディスクに書き込むのではなく、RAMにバッファリングまたは「キャッシュ」して、実際に書き込むまで待機します。これは、
- 速度の観点からは、一度に大量のデータをドライブに送信する方が効率的であり、
- NTFS/ext3/ext4 ジャーナリングは、個々のセクターの書き込みではなく、一連のトランザクションをログに記録すると、効率的に機能します。そのため、少量の初期書き込みデータは完了として報告され、これはすぐに行われ、ディスクへの実際の書き込みは後で行われます。書き込みによってバッファ ファイルが構築されると、速度は実際の物理書き込み速度または中程度の速度と一致します。Windows では、リムーバブル ドライブではデフォルトで無効になっていると記憶していますが、システムの設定がそのように設定されていない可能性があります。
- ほとんどのハード ドライブには、バッファとして一定量の RAM が搭載されています。これは、ユーザーとハード ディスクの間にある 2 番目の「キャッシュ」層である可能性があります。ハード ドライブが書き込みにこれを使用するかどうかはわかりませんが、使用するハード ドライブもあるかもしれません。
- ファイル転送速度が低下した時点でハードドライブが断片化している可能性があります。
- Windows の場合、「I/O 優先順位」は Windows Vista で導入され、7 まで継続された機能だと思います。制御プロセスの I/O は、カーネル内で少し実行された後に、最近使用されたプロセスまたは対話型プロセスに優先して優先順位が下げられた可能性があります。これは単なる推測であり、この機能が実際にどのように機能するかはまったくわかりません。
- 同じ USB ルート ハブ上の他の USB 通信により、バスの競合や速度低下が発生する可能性があります。