I have an external USB 3 "spinning rust" 2.5'' Harddisk.
Serial number lookup at Western Digital reveals this is a model WDBYNN0010BBL, "WD My Passport (Ultra) Portable Storage, Blue". 1 TB = 931.48 GB, cheap and cheerful. No data sheet. WD instrumentation software provides no way to find out more about the actual harddisk in the enclosure.
Although USB 3, I connect it to an USB 2 interface on the PC (it's an old PC).
I'm filling the disk with semi-random data, directly writing to the partition (i.e. /dev/sdd1
in Linux).
Problem:
Initially, the writing program reports a write performance of ~28 MiB/s (way below the max performance of USB 2, 50.7 MiB/s).
The writing program does nothing except write a chunk of data, then sync.
Once around 7 GiB have been written, write performance becomes flaky and starts to pogo between 8 MiB/s and 28 MiB/s.
After about 115-120 GiB have been written, write performance decays further to consistently hover at around 6 MiB/s, temporarily going as low as 2 MiB/s for a few hundred MiB.
However, once you suspend the program for half a minute (CTRl-Z) and then resume it, write performance goes back up to 28 MiB/s. And then after some time, the performance decays again.
Question:
Is there something in the construction of this disk which allows only short bursts of acceptable write speed? Does it pretend to be fast by having a large internal (nonvolatile) cache?
I have a number of other external USB disks (some from WD, although none that are of the exact same model) and they all manage to sustain 10+ MiB/s write speed, which makes backups at least viable as they can run in an afternoon instead of 24h.
Update #1
It is also running the latest firmware v1.019, as per "WD Firmware Updater" for Windows)
Update #2
"WD Drive Utilities" for Windows says it passes the S.M.A.R.T. test, the "quick drive test", and the "complete drive test". Nice!
Update #3
Filling the disk on another Linux machine via an USB3 interface upgrades the write throughput to 100 MiB/s. However, the decay is still there, going down to 33 MiB/s or even 9 MiB/s, so that at the end of the operation, the mean write throughput for the whole disk was just 30 MiB/s.
Update #4
smartctl --all /dev/sdd
reveals:
Device Model: WDC WD10SDZW-11UMGS0
Serial Number: WD-WXT1A57EU75S
LU WWN Device Id: 5 0014ee 607b8ce4a
Firmware Version: 01.01A01 <--- HUH? I thought it was 01.019??
User Capacity: 1,000,171,331,584 bytes [1.00 TB]
Sector Sizes: 512 bytes logical, 4096 bytes physical
Rotation Rate: 5400 rpm
Form Factor: 2.5 inches
Device is: Not in smartctl database [for details use: -P showall]
ATA Version is: ACS-3 T13/2161-D revision 5
SATA Version is: SATA 3.1, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is: Sun Dec 8 12:58:26 2019 CET
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
All offline tests passed, reallocated sector count is 0 (though this may not mean much).