Ridiculously slow read/write between two SSDs (Linux)

3

1

So I have a Kingston SSD (120Gb HyperX 3K; SH103S3/120G) that is about two years old and just picked up a new Kingston SSD (240GB SSDNow V300; SV300S37A/240G) to go along with it. I’m trying to transfer data over, except the read/write speeds are ridiculously slow. Like sometimes it starts at 150Mb/s, sometimes it starts at 25Mb/s, but either way it’s under 10Mb/s within a minute. For large transfers > 5Gb it seems to stabilize around 2Mb/s.

The old drive benchmarks to around 300Mb/s for both read and write and the new drive to 400Mb/s. Looks like it’s a serious problem with sustained transfers.

I’m on Linux, both drives formatted to Ext4, and using a 4 year old motherboard (ASUS M5A99X EVO); not sure if it would be more software or hardware related. I believe they’re in SATA III although not 100% sure.

Anyone have ideas as to what might be causing the slowdown or how I can improve it?

It actually seems like it’s a software limitation somewhere in Linux, writing my own file transfer script using shutil in python I can get a sustained 150-350Mb/s no problem.

Linux version 3.16.0-38-generic (buildd@allspice) (gcc version 4.8.2 
(Ubuntu 4.8.2-19ubuntu1) ) #52~14.04.1-Ubuntu

Fresh install of Linux Mint Rafaela 64
Mate 1.10.0-1
Nemo 1.1.2?

AltusVultur

Posted 2015-10-03T22:16:23.270

Reputation: 31

How are you trying to transfer the data across ? Maybe some other software is gettng in the way, or you have fauly hardware ? – davidgo – 2015-10-04T02:11:14.830

I'm getting slow speeds using the standard copy/paste functionality through the file manager (nemo). No other software is reading from or writing to the old disk, and very minimal I/O on the new disk. I doubt it's a hardware problem as I'm able to get normal speeds through other methods. – AltusVultur – 2015-10-04T02:18:01.333

If you want to test drive speed in Linux, this dd command would work for testing write speed: time dd if=/dev/zero of=/path/to/one/place/testfile bs=1024 count=2048. And then run this command to measure read speed: time dd of=/dev/null if=/path/to/one/place/testfile bs=1024. Just change /path/to/one/place/testfile to match the path of your volumes you wish to test. – JakeGould – 2015-10-04T02:22:45.420

@JakeGould Using those commands on the new drive is returning 90-250Mb/s for write and around 1Gb/s for read. For just a few files I seem to get (mostly) max speed, it just has trouble handling thousands of relatively small files ( < 20kb ) – AltusVultur – 2015-10-04T02:33:24.757

I know some slowdown is expected, but after some trial and error with alternative methods it is much much MUCH slower than it is physically capable of. – AltusVultur – 2015-10-04T02:40:17.307

You are aware ext4 and with other filesystems is not the greatest for small file large quantity transfers I hope. what other methods have you tried exactly ? rsync scp ftp or just the dd given by Jake Gould and stand cp <source> <dest> ? – linuxdev2013 – 2015-10-04T02:58:53.813

No answers