9

次のテストを実行しました。このバッチを使用して、400バイトの15'000ファイルを含むフォルダーを作成しました。

@ECHO off
SET times=15000

FOR /L %%i IN (1,1,%times%) DO (
    fsutil file createnew filename%%i.txt 400
)

次に、次のコマンドを使用して、Windowsコンピューターにコピーして貼り付けます。

robocopy LargeNumberOfFiles\ LargeNumberOfFiles2\

完了後、転送速度は915810バイト/秒であり、これは1MB/秒未満であることがわかります。7Mバイトをコピーするのに数秒かかりました。これは非常に遅いことに注意してください。

私は50Mバイトの単一ファイルを含むフォルダーで同じことを試しましたが、転送速度は1219512195バイト/秒です。(ええGB / s)瞬時。

なぜ多数のファイルをコピーするのに非常に時間がかかるのですか?Windowsファイルシステムのリソースですか?

ext3ファイルシステムを備えた仮想マシン(vmwareプレーヤー)の同じコンピューターで実行されるLinuxシステムで同じことを試みたことに注意してください。

cpコマンドを使用すると、コピーは瞬時に行われます。

次の点にも注意してください。

  • ウイルス対策なし
  • 複数のWindowsコンピューター(常にntfs)での動作をテストしましたが、常に同等の結果が得られます(7Mバイトをコピーするための転送速度は1MB/秒未満で平均7〜8秒)
  • 私は複数のLinuxext3システムでテストしましたが、その量のコピーは常に瞬時に行われます(400バイトの15000ファイル)
  • 問題は、たとえばLinuxのファイルシステムと比較して、Windowsファイルシステムが多数のファイルをコピーするのが非常に遅い理由を理解することです。
4

0 に答える 0