Monday 12 October 2015

Trials and tribulations with go faster stripes (Solid State Disks)

Background

I’ve been aware of Solid State Disks (SSDs) for quite a few years. It was 2007 when I built my first PC, but back then SSDs were hideously expensive, of the order 30 GB was over £100, possibly even £200! So reserved for the most affluent and enterprise environments. It wasn’t until about 2011 that I actually got my first SSD – so I want to take you on a little adventure to describe my experience of SSDs.

In order to provide an effective benchmark, I’ve used a piece of software called Crystal Disk Mark – a benchmark program used for testing the read/write speeds of drives. You can get Crystal Disk Mark from here : http://sourceforge.jp/projects/crystaldiskmark. Below are the results taken from a 280GB Western Digital SATA 2 hard disk drive in my test rig. You can use these numbers as a reference when comparing the performance of the SSDs.

Basic SATA drive performance


Test 1 - Sequential Read-Write

The first test is called the sequential Read and Write speeds. Particularly for SSDs, these should be taken with a pinch of salt however because this test was based upon writing (and reading) and single data block of 1 GB. When this is the case, it means that the SSD technology really becomes very efficient because the SSD firmware is writing/reading the data to one sector completely, moving on to the next adjacent sector completely etc. This is very efficient because you are writing to adjacent sectors and very often, SSDs are made up of banks of smaller memory, so you could be writing/read from two or more sectors simultaneously.

Test 2 - 512 KB Random

The second test is the 512 KB random read and write speeds. This means that 512KB is read/written from a sector before moving on to a random other sector.

Test 3 - 4 KB Random

The next test is the 4 KB random read and write speeds. The 4K is the same as the 512 KB test, but this time using only 4KB files. This works on the principle that actually there are a significant number of files that are very small (go look in your System32 folder in the Windows directory – full of dlls that are all quite small. So this test is trying to be more realistic (browsing the web type tasks) of demands placed on your “drive”.

Test 4 - 4K QD32

Finally the 4K 32-queue depth test

Popping my cherry – OCZ Agility 30 GB

My very first SSD was an OCZ Vertex 30GB drive. I bought this from Overclockers UK (http://www.overclockers.co.uk/) for, what was at the time expensive for me and the industry of about £70. So the price per gigabyte was almost £2.50! As always though, the higher capacities had a better price per gigabyte ratio. At the time, I couldn’t afford the more useful 120 GB drive that were about £2-300 in my wildest dreams, but I was thinking that I could use the SSD as a boot disk, so at the very least, Windows should be nice and snappy.
Agility 3 SATA 3 MLC SSD
So I did exactly that, put a fresh install of Win7 64-bit on, and would you believe I had about 12-15 gigs left! woo-hoo! Yeah, I should make it clear, that was a completely fresh install. Better get Windows Update running and start getting drivers for graphics cards etc. Before I knew it I’m down to about 5 gig! OK that’s tight but bearable. What catches you out is all your other applications.
Bah! Don’t be stupid Chris, they are going on my second drive. Aye yes they are, but one notorious application would be Steam. And its notorious, but not because its Steam. Most games seem to want to install a new DirectX, some .NET frameworks etc. and before you know it – kerblam! The dreaded pop up “Your drive is getting full” arrives!

The theory of running just the OS on a 30 GB SSD is a grand one, but when you factor in the formatted capacity plus over-provisioning, plus your OS, plus the updates, plus the random junk you just can’t quantify. 30 GB is tighter than a ducks backside. I struggled on, but I was constantly aware of the drive capacity. I couldn't’ just “use” my PC – oh I’ll save those to my desktop and … nope drive got filled up doing that.

In terms of performance, the drive was great, I did notice a modest speed bump (I was using the most bottom of the range SSD and it was SATA 2) – things did feel a bit snappier, so I can certainly say the SSD helped, but 30 GB? I really CAN’T recommend it, the only time I was happy with it was when I went through a Linux phase and installed Ubuntu on my laptop with the 30 GB SSD. The whole OS was about 1 gig, OK updates are often and numerous but you won’t burn 50% of the drive on the OS! And given how lightweight Ubuntu is, it was flying along!!

Test Results

Note due to technical problems I have had to use information provided by a third-party.

OCZ Agility 3 results provided by Who Talking


Specifications

Bear in mind however, OCZ claim these specs (not all are a direct comparison due to lack of information)
  • Up to 525 MB/s Sequential Read
  • Up to 500 MB/s Sequential Write
  • Up to 35k IOPS 4k Random Read
  • Up to 35K IOPS 4k Random Write
More information available here.

Summary

We can see with no doubt that even this entry level SSD is lightening quick in comparison to the HDD.

Born-again virgin – OCZ Vertex Plus 60 GB

A year later and I had witnessed a massive boom in the uptake of SSDs. I also had a new job that paid well so I could afford a small luxury of an SSD. Again, from Overclockers I bough my OCZ Vertex Plus, this time a 60GB model after the stress of managing the 30 GB drive. The 30GB drive got shoved into the HTPC to run Windows XP and the 60 GB drive went straight into my gaming PC. First thing, format the drive, it came out at 55 GB, OK that's a 9% loss compared to as advertised thanks to the definition of a gigabyte plus over provisioning which is slightly above average.
Vertex 3 - SATA 3 2.5-inch SSD
Putting on Windows 7, I was chuffed to see that even after the PC was fully updated I still had about 25-30 gigs of space left.

Test Results

Performance-wise, running Crystal Mark netted me these speeds:
OCZ Vertex3 Results

Specifications

Bear in mind however, OCZ claim these specs (not all are a direct comparison due to lack of information)
  • Up to 550 MB/s Sequential Read
  • Up to 520 MB/s Sequential Write
  • Up to 50k IOPS 4k Random Read
  • Up to 60K IOPS 4k Random Write
Information available here.

Summary

The first row of numbers in the screenshot shows the Sequential Read and Write performance at 149.5 and 121.4 for the SSD vs. 53.56 and 52.73 for the HDD we can see that for reading data we are getting a 3x improvement and writing is about 2.5x.

We saw speeds of 124.1 and 117, so this shows that the random performance of the drive is still very high.

The next test,  we see 17.15 and 14.24 – this is an astonishing 20-50 times faster than a HDD! This comes down to the fact that with a hard drive, you are limited because you have to wait for the disk to rotate and the head to move across the platter, with an SSD, as you can see you get considerable more speed.

Third times a charm – Samsung 840 256 GB

This was actually a bit of an impulse buy, a friend was considering buying Windows 8, it was on offer for about £50 so was a reasonably good deal, he came out with the comment that “if I’m getting a new OS, I might as well get a new drive for it too”, I had planned to just install Windows on my normal hard drive, but when he said that it got me thinking.

So I brought up my favourite PC tech site – custom PC and they had just published an article summing up all the SSDs that were out at the moment, hmm I’m thinking divine intervention here. And I read the reviews and the Samsung 840 was on top. So i flicked over to Amazon, few taps and bang, I’m looking at the Samsung 840 256 GB for about £150.

At this point in my life, I was now well entrenched in a professional job so I’m feeling a bit more plush, so spending £150 on a PC upgrade is a bit of a stretch as I was saving for a house at the time, but doable I thought. In the end, I got it.


Samsung 840 256 GB SSD

Test Results

Performance wise, here are the results:


Specifications

Bear in mind however, Samsung claim these specs (not all are a direct comparison due to lack of information)
  • Up to 540 MB/s Sequential Read
  • Up to 330 MB/s Sequential Write
  • Up to 98k IOPS 4k Random Read
  • Up to 70K IOPS 4k Random Write
Information available here.

Summary

Looking at the results, at first we are very impressed – 250 MB/s read is astonishing, but that is less than half of the spec, so what is going on here? Well this is actually my fault because the drive was plugged into a SATA 2 port, none of my PCs are equipped with SATA 3 at the moment so I'm unable to give a full upper practical limit result.

Samsung 850 EVO 250 GB

This was actually a present from my partner. I, being a gentlemen, let her use my high-performance gaming PC whilst I used a workstation PC. The workstation PC has potential, its an Intel Xeon-based computer with fully buffered error-correcting memory. The memory is a bottle-neck for two reasons, firstly the PC only had 4 GB to start with, but also its relatively slow, its a rather meagre 400 MHz!

At the time we would play Lord of the Rings Online (LOTRO) together, the problem was it would take 30 minutes from the computer being turned on to the LOTRO launcher ready to launch the game (I had it start on startup). So if we wanted to play together, it mean't a little forward planning. As a result of my despair - I was purchased the Samsung 850 EVO SSD drive with a capacity of 250 GB.

After formatting the drive I was left with a healthy 232 GB, again, sounds like nearly 10% over-provisioning, but if you factor in that Samsung state a gigabyte as 1000 MB, rather than 1024, the drive is really a 244 GB, so provisioning is just 5% which is lean.

Samsung 850 EVO SSD

Test Results

Performance wise, here are the results:
Samsung 850 EVO SSD results

Specifications

Bear in mind however, Samsung claim these specs :
  • Up to 540 MB/s Sequential Read
  • Up to 520 MB/s Sequential Write
  • Up to 97k IOPS 4k Random Read
  • Up to 88K IOPS 4k Random Write
Information available here.

Summary

For the most part, my comments on the 840 are still valid.

It's interesting to see that in some areas there are some minor performance gains (sequential read / write and 4K read / write) but in almost all other areas there are some stonking gains (512K write, 4K QD 32 read / write) and in just one area there has been a loss (512K read). Ultimately what this says to me is a) the hardware around the SSD i.e. my motherboard is bottle necking and b) Samsung have put a lot of effort into making the SSD perform across a range of situations rather than a limited range (4K QD32 means that all those little files your operating system is using, will be executed far fasted)

Conclusion

Solid State Disks are amazing I love them to bits. There are even more things you can do to boost performance, you could use your motherboards RAID controller to RAID 0 two or more drives for blistering speeds that traditional, spinning platter drives can only imagine. Over the past 5 years, the price per gigabyte has dropped massively to the point that actually useful sized drives are reasonably priced. 60 GB drives which are the smallest capacity that I would recommend can be found for £50 which makes setting up a dual drive PC with the OS on the SSD and everything else on the HDD very viable. Depending on what you do with your computer, if its just web browsing and playing a handful of games, you could just get one SSD of reasonable capacity (128 GB if this is the case is the smallest I’d recommend).

In my most powerful PC, a HP xw8600 workstation, I have the Samsung 850 EVO 256 GB drive as the main OS drive and I do have some of my favourite, most heavily used games (Final Fantasy) and applications (MATLAB and Da Vinci Resolve) installed on it, there is also a traditional HDD that stores everything else however.

2 comments:

  1. Dude, you're so limited by the interface!!! I have a 840 Pro and it runs like a dream. It's still limited by the SATA 3 bus though. You want to look at the M.2 PCIe SSDs!

    ReplyDelete
    Replies
    1. Hey Woody thanks for reading! I did neglect looking into other interfaces such as using PCIe, mostly because I have neglected them due to cost, but I would imagine they run faster than a greased up rat down a drainpipe! The 840 and 850 that I've got are brilliant and are probably the single best upgrade I've done - I certainly witnessed the boot times on my workstation (from off to LOTRO ready) drop from 30 minutes to 3 or 4!

      Delete