Copying several large files ( > 2GB ) between two USB HDDs reveals the I/O pattern below in Process Explorer.
Write caching is disabled on the destination drive. I would have expected I/O to run at high speed until the device's internal cache filled up, at which point it would slow down for the remainder of the transfer.
Instead, we see spikes of high I/O, followed by a downward slope before it drops off entirely, only to resume a few seconds later. The HDD activity light remains on the entire time.
What is going on here? Why the complete stalls? I would presume they happen when the drive's internal cache is full, but it seems to then refuse any further transfers for a short while, then return to full speed (indicating that the cache is possibly empty).
The source drive is a Seagate 500GB SATA connected via USB, the destination drive is a 2TB WD SATA also connected via USB.