For many years I have been stuck on USB 2.0 (with its quite poor transfer speeds) and have been through a journey of eSATA (they all seem to require external power supplies) and finally settled on a USB 3.0 ExpressCard (that's PCMCIA to you old skool people). I have a relatively old laptop (well .. I bought it two years ago) which was before laptops started coming with over 3 hours of battery life (I wish!) and USB 3.0 as standard so I wanted some way of getting some decent speeds with the advantages of plug-and-play capabilities and an ExpressCard seemed to be the answer.
These ExpressCards have been around for a while and you can generally pick them up for around £30 and they claim to offer "plug and play, USB 3.0 transfer speeds". You can couple this with a whole variety of USB 3.0 external drives (or drive caddies, which you can fit your own 2.5" hard drive or solid state drive into).
Being the curious person that I am I have decided to benchmark the different speeds I get with various drives I have:
- Samsung 500GB USB 3.0 External Drive (which is a spindle HDD running at 5400rpm)
- USB 3.0 2.5" Caddy with a Seagate Momentus XT 500GB HDD (@ 7200rpm)
- USB 3.0 2.5" Caddy with a Crucial M4 512GB Solid State Drive
In order to run all of these tests I have been using CrystalDiskMark which runs a series of tests for both sequential and random read/write behaviour. I tested at both 1GB and 100MB sizes but frankly they were identical on every single drive so I have here published the 1GB results (as most users I know are typically playing with virtual machine images, ISO images or backups, all of which are typically quite large).
Test 1 - Internal SSD Drive (SATA II)
First off was my internal drive (Crucial M4 512GB) which is an SSD with a maximum advertised transfer speed of 550MB/sec.
|Internal SSD - Crucial M4 512GB|
At first glance the throughput of 200 - 250 MB/s looks a little low, but the motherboard on my laptop only supports a SATA II interface so my SSD drive is capped to a theoretical maximum of 300MB/s (assuming 2.4Gbit/s after encoding). If I had a newer SATA III motherboard then it should be almost twice as fast!
Test 2 - USB 2.0
I had 3 different tests to perform on USB 2.0. We have our 5400rpm Samsung drive, a 7200rpm Seagate drive and another Crucial M4 SSD drive. The results were not terribly surprising
|USB 2.0 SSD - Crucial M4 512GB|
|USB 2.0 HDD - Seagate Momentus XT 500GB @ 7200rpm|
|USB 2.0 HDD - Samsung 500GB Drive @ 5400rpm|
The only advantage the SSD drive has is the random read/write performance which for large 512K chunks is just as quick as sequential read/write and although the 4K chunks are a paltry 4MB/s this is still around 10x faster than the HDD can manage!
Test 3 - USB 3.0
This was an identical test to the USB 2.0 tests but this time running on USB 3.0. The spec for USB 3.0 claims a maximum throughput of 5GBit/s so it is pretty close to the SATA III maximum of 6Gbit/s (and certainly outweighs my own motherboard's maximum throughput).
|USB 3.0 SSD - Crucial M4 512GB|
|USB 3.0 HDD - Seagate Momentus XT 500GB @ 7200rpm|
|USB 3.0 HDD - Samsung 500GB Drive @ 5400rpm|
USB 3.0 - Random Read/Write Performance
The random read/write performance of the SSD over USB 3.0 is vastly quicker, with the 512K chunks showing the same performance as a sequential operation (which obliterates the HDD performance) and the 4K chunks showing a 2x - 5x speed improvement.
The HDD are showing almost the same as they were getting before, although again the 512K random read/write is a lot faster (but HDD really can't achieve the random speeds that SSD drives can)
USB 3.0 - Sequential Read/Write Performance
This was the shock .. pretty much all of the drives get the same performance (between 80MB/s and 95MB/s) and although this is a vast improvement over USB 2.0 (every single drive shows a 400% increase in transfer speeds).
For HDD this is pretty close to their maximum speed as even internal SATA HDD rarely get above 90MB/s purely due to the limits of mechanical magnetic based drives. For me the big surprise is that the SSD drive doesn't get anywhere near either the speed for the drive or the speed for USB 3.0.
I can only expect this is due to the throughput of the actual ExpressCard itself. The specification describes that the maximum throughput you can get between an ExpressCard and the PC is up to 1.06 Gbit/s throughout (which is 135 MB/s). Once you take account of encoding this will drop and explains why all of our connections are capping out below 100MB/s.
Well .. I can't deny that the performance is a big advantage even being well below the USB 3.0 maximum spec!
Even using an ExpressCard / PCMCIA adapter you are still likely to get a massive performance boost. To put this in perspective if you were transferring a 40GB Virtual Machine backup to an external drive then:
- Using a USB 2.0 port (at 21 MB/s write) it would take 32 minutes
- Using a USB 3.0 ExpressCard (at 85MB/s write) it would take 8 minutes
However, if you are planning on going for a "native" USB 3.0 socket on your next machine then going for SSD could give you a huge advantage. You could be looking at over 400MB/s with a full speed USB 3.0 SSD drive which would reduce that 40GB transfer down to 1.5 minutes!!
The alternative is that you want to use your external drive for every-day storage, reading/writing files (perhaps running multiple virtual machines from the drive) in which case you will definitely benefit from the SSD. The random read/write speed even over USB 2.0 is blazingly fast compared to even the quickest HDD and on USB 3.0 this gets even better.
The only question I suppose is .. can you afford it?