Linux – HDD to SSD file transfer very slow

hard drivelinuxperformancesatassd

I'm using Fedora 22 Linux, and just got a brand new Samsung 850EVO 250GB SSD.
I'm trying to move some of my files (mostly, my most-used games) from my old HDD to my new SSD but the transfer speed is nowhere near what I expected.

hdparm shows the read speed of the HDD at 105mb/s and the read speed of the SSD at 520mb/s but the files are transfering at less than 20mb/s.

Both drives are connected to Sata 3 ports and i've tried replacing both SATA cables with brand new ones, and saw no change.

Any help would be appreciated, thanks.

Edit: they are connected to SATA_1 and SATA_2 on the motherboard both slots are sata 3.0 ports. Both file systems are ext4

Best Answer

This is normal. The read speed of your HDD from hdparm is the maximum sequential read speed under ideal conditions. You will not achieve this speed while copying multiple files in the real world.

A HDD can only reach its maximum sequential transfer rate if it never has to move the head (seek). Each time your hard drive has to move the read/write head, you lose around 2% of your read speed.

If you are copying lots of small files, or a single large file split into many parts, your drive may need to move the head dozens of times per second, which can drag your speed down to less than 0.5MB/sec under worst-case conditions.

Related Question