Slow data transfer between two SATA III HDDs

3

Is 30 MBps (30 megabytes/sec) an acceptable data transfer speed for SATA III to SATA II copy?

I'm copying data off one HDD into another. Both HDDs are Seagate ST3000DM001, one from 2012 and other from 2014, the 2nd one is empty. Both are directly connected to the SATA ports of a Gigabyte GA-C847N mini-ITX mobo with 2 GB RAM, running Ubuntu 14.04 from a flash drive (freshly booted, no extra software or drivers installed). There are about 200K files of sizes varying from a few KB to a few GB.

enter image description here

From the GA-C847N manual:

Chipset:

  • 1 x SATA 6Gb/s connector (SATA3 0) supporting up to 1 SATA 6Gb/s device
  • 2 x SATA 3Gb/s connectors (SATA2 1/2) supporting up to 2 SATA 3Gb/s device

The HDDs:

  • Seagate Barracuda ST3000DM001 3TB 7200 RPM 64MB Cache SATA 6.0Gb/s 3.5" Internal Hard Drive

One HDD is connected on a SATA 3 connector and other in a SATA 2 connector.

Both filesystems are NTFS with the default block size (4KB).

Even if both HDDs were in SATA 1 mode, the advertised speed 1.5 Gbit/s (150 MB/s) speeds. I know this is a theoretical top speed, and I suppose the speed is shared between both HDDs (that is, 30 MBps each), but still, 60 MBps is nearly 1/3rd of (150 MB/s).

  1. Is my assumption that the total SATA speed is shared between multiple SATA HDDs correct?
  2. Why is this transfer so slow?

That Brazilian Guy

Posted 2015-01-23T14:15:12.783

Reputation: 5 880

3First off, time is needed for each file to create and update entries in the partitions index (mft, fat, etc)... it's usually quicker copying a small number of large files instead of a large number of small files the same size – Canadian Luke – 2015-01-23T14:51:04.330

What kernel are you running? uname -r – cybernard – 2015-01-25T22:25:06.283

Related: http://superuser.com/questions/99852/how-to-increase-hard-drive-transfer-speed?rq=1

– That Brazilian Guy – 2016-12-10T15:21:31.207

+1 on canadianluke said, try doing several different copies of different data at once then just one copy of everything. For example you have 12 folders, copy folder1 then paste to new hard drive, copy folder2 then paste to the new hard drive, keep doing this until you have all 12 copies running individually. The read/write times on tons of small files in just one copy will take forever, that's why you should run a bunch of copies of different data all at once to get it done faster. – LSxCPU – 2017-06-28T12:23:46.070

Answers

1

First, off SATA uses a 1 to 1 ratio so the bandwidth is never shared. I have owned 3 of the ST3000DM001 and they all failed. The fastest average hard drive speed is 80mb/s and a few can do 100mb/s due to the limitations of using a spin disc for storage. Also as @Canadian Luke says each one of the 200k files has to create/update entries in the MFT and each time it has to stop and start a new files slows you down.

Also windows estimated time remaining and mb/s are usually way off to start with. Microsoft uses a system of averages to determine the speed and time remaining. You will get a far more accurate reading after 10k to 50k files have been copied. As you have only transferred 41 files your numbers are going to be way off.

Also see how bad seagate 3tb hard drives are by following this link:

http://www.extremetech.com/computing/198154-2014-hard-drive-failure-rates-point-to-clear-winners-and-losers-but-is-the-data-good

cybernard

Posted 2015-01-23T14:15:12.783

Reputation: 11 200

1The image is a Nautilus file copy dialog in Ubuntu Linux. After transfering 1/3rd of the files, the speed was still 32 MB/s. And thanks for the bad news... I heard it after I bought the HDD :( – That Brazilian Guy – 2015-01-24T19:59:58.870