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.

Tuesday 6 October 2015

Maintaining and Expanding a RAID-5 Array

In my previous post I talked about my initial set up of Windows Home Server 2011 (WHS2011) onto my file server, I’d like to talk about a few key topics when it comes to RAID arrays : maintenance and array expansion / growth.

Maintenance

Looking after your RAID array is pretty much non-existent other than checking that you array is healthy. There are a couple of ways you could do this, firstly, the condition of drives themselves could be useful to know – you can get indication of drive health by examining the SMART data that is available. Applications such as speedfan can read the SMART data and make it easily viewable for you. Here is a preview of one of the drives SMART data in Speedfan :


SSD SMART Data

The second way that I know of is to type “compmgmt.msc” in the run / search command

Computer Management
And press enter to bring up the Computer Management tool, choose the Disk Management option under Storage on the left hand side – this is where the array was built from and you can get indications of its status here too. When you first create the RAID array, Windows needs to “synchronise” the drives. The reason for this is because RAID-5 uses an algorithm to split data across the four drives in a particular way… in basic speak the RAID-5 algorithm says “a bit of the data is on Disk 1, another bit is on Disk 2 and the final bit is on Disk 3, but just to check that the array hasn’t corrupted / drive failed perform a parity check – the parity data is held on Disk 4”. When you start with a brand new array your drives are theoretically empty. Windows will run over all the drives applying that algorithm so that they are “prepped and ready” for new data.

This building process can be very slow, but I did find that the array was available straight away, so I started dumping my data onto it – although that did slow down the array building process quite a bit.
Lets say a drive has failed in the array … how do you know? Well, so far, I haven’t found a way to make the server automatically report it via an email or a pop-up, so until I’ve set something up to do that, I need to check it manually every now and then. So in my situation, what I did was unplugged the SATA cable to a drive to simulate a failure … when I load up Computer Management :


Failed redundancy
You see that the RAID array drives have the status : failed redundancy. What this means is that the level of redundancy given to you by RAID-5 has been lost due to a drive failure – the beauty of RAID-5 is that you can lose any of the drives – it won’t matter, but lose a second drive before you have fixed the first and you've now started loosing data.

How do we deal with this? Well, we get ourselves a new hard drive and get it plugged in :

Adding a new drive
The very top drive is my replacement drive – its a 1 TB drive as opposed to a 500 GB drive but that doesn't matter, as long as the drive is the same size or bigger than the broken one all is fine.
Right click the drive and select “convert to Dynamic Disk”:

Dynamic disk
You are then greeted with a little pop-up box to ask you which drives you want to convert (you could have several, doing them all in one go will save time)

Drive conversion

You will then see the status of the drive change to “Dynamic Online” … once that appears you can “add” the drive to the RAID-5 array by right clicking any of the RAID-ed drives and clicking “repair volume” :




This brings up a window that asks which drive(s) do you want to add to the RAID array:




The drives will then start to resynchronise again – this wont take as long as when the drives were initially initialised in the RAID array because 3 out of the 4 drives contains prepared data so the process just needs to prepare the fourth drive.  Having said that, it still takes a few hours at least. Once it does finish, the array should return to the healthy state.

Windows will still have a record of the previous 500 GB drive however, so you want to remove that from its records by right clicking on the drive that says “missing” and choosing to remove it :




I had a pair of external hard drives laying around that I wasn't really using, they were 1 TB and 2 TB drives. So what I did was follow this process for replacing a failed drive with a new one. So two of my 500 GB drives are replaced with a 1 TB and 2 TB drive. The idea is to sell them to buy more 2 TB drives so that my entire array is filled with 2 TB drives – that's the dream! That will give me 6 TB of storage, which will certainly do for the foreseeable future!

Expanding the array

Adding new drives to an array to boost capacity follows the same process as above – physically add the drive to the PC, convert to dynamic, repair the volume to add the new drive and off you go!

The first section about repairing the array was something that I had struggled to get information on from my prowls of the internet, hopefully this will be useful for you out there!
Ciao for now!

My File Server

Background

I have talked about my initial set up of Windows Home Server 2011 (WHS2011) onto my file server PC, I thought I would give you a quick outline of it (read about my overview of WHS2011 here)

What I want it to do for me.

I have quite literally dozens of PCs in various states of repair and holding various files and useful information. I’m sick of using a pen drive to move stuff about and forever wondering, “which machine has that file again?”. So I want a central file store that I can access from any PC. Ultimately, I would love to be able to use something like FTP (File Transfer Protocol) so that I can access my data anywhere in the world. Why? Because I can!

So what is my server?

Well I should admit that I am a hoarder / slow upgrader. For one reason or another, I never seem to have much money to invest (ha is that really the right word to use?!) in computers. So I tend to get a lot second hand and a few generations old. So my server is quite literally old pieces that I had laying around from previous upgrades.
  • CPU : E6700 Core2Duo
  • RAM : 4 GB DDR2 800 MHz
  • Motherboard : TBD
  • OS Drive : Seagate 160 GB
  • Data Drives : 4 off Samsung 500GB HDD
  • PSU : Corsair
  • GPU : 8800GTX
It is mounted in a 4U rack mount case (read about that here), I have a 42U rack in my garage (why? Because I could and it was cheap off eBay!) I want to get the rack populated with rack mount cases on sliding rails so that I can easily work on a PC.

The four 500 GB drives are set up in a RAID-5 array so that I have a good balance of fault tolerance (I can have a single drive fail and still not lose data) and capacity. The idea of a RAID array is also quite appealing – just one uber drive that is arguably of higher performance than any single one. Whats not to love? Its also a good convenience!

My file server chassis

The Gutz

Well thats me off for now!

4U Rack mount Case Review

Background

Today I am reviewing a 4U rack mount case that I purchased from Compubid2 (http://stores.ebay.co.uk/Compubid2-Computer-Supplies?_trksid=p2047675.l2563) on eBay for just £39.99.

Case walkaround

The case comes as standard as a matte black. First impression is that the case has been made reasonably sturdy, certainly the main body of the case is strong and made from 3-4mm steel, the top panel does feel thinner and does flex to the touch, however, cases of similar price (from Maplin) have been made from far thinner and flimsier material. Two very rugged handles either side of the front fascia provide a grip for pulling out of the rack.

Front view of the case
A sleek semi-opaque black Perspex panel makes up the majority of a key lockable security panel. On the far left of the front fascia are two USB ports. It would have been nice if these two had been behind the security panel to prevent malicious attack such as with key loggers, however the addition of front mounted USB ports is very welcome as rear access when mounted in a rack is all but limited, probably impossible in the vast majority of installations.

Also on the front fascia are vents, on the inside of the case good mountings are available for fans which I personally recommend to help create a draft through the case, as opposed to using roof mounted fans which simply push the air about inside the case.


The security panel is opened using one of the two provided keys, behind which can be found the 5.25 drives, the on/off, reset and keyboard lock switches. The USB ports of the far left are just USB 2.



Case with security panel open


At the rear of the case two thumb screws (removed) are all that is needed to remove the top panel.



Remove the thumb screws

With the top panel removed, we can first of all see that two 80mm fans come provided. If you look in the bottom right corner of the roof panel, you can see a point dent, the metal work is easy to deny. Inside, you are welcomed by a cavernous volume.  As you can see, I’ve managed to build a full ATX system inside and this was done comfortably. The 5.25” rack comes with spacers to allow 3.5” drives to be installed without trouble and up to 3 5.25” devices can be installed here.

For the remainder of the width of the case is a side mounted 3.5” rack for further drives.


Full ATX PC
Both the 5.25" drive bay and 3.5" drive bays are mounted to the chassis via a bolt with a 15 mm spring to provide insulation against shock (quite reasonable in a rack mount environment, I know I shove my cases in the rack).

Spring shocks

It should be noted that the 5.25" drive bay mounting comes with a 3.5" adapter that allows you to mount your HDDs horizontally, but it is a royal chore to do this however.The first step is to remove the drive bay from the chassis, undoing four bolts.


 One the bay is out the case (as shown above right). You then have to release the 3.5" adapter from this chassis with another four screws to release the U-shaped adapter (shown below):


 At this point you can now mount your drives in the bracket. Having had to do this the once, I'd never want to do again so I'd recommend installing hot-swap drives here.

One of my favourite features is the use of a cross brace bar across the width of the case. In most cases this is used for adding stiffness to the case, or in some cases, fans are suspended. This case has several adjustable risers that can be used to provide support to extension cards, in the picture below I’ve used them to brace my graphics card. Given that his case is going to be slid in and out of a rack and brutally handled, and with my experience in the past that graphics card are incredibly sensitive, this is a welcome addition.

Supports for graphics card

Thermal Testing

In order to test the thermals of this case I am using an AMD based system with a GTX260 graphics card. The exact details of the full equipment used are provided below:
  • Power Supply : Antec VP350P
  • Motherboard :
  • Processor : AMD Athlon 64 3200+
  • Hard drive : Fujitsu
  • Graphics Card : XFX GTX 260 896 MB
  • Operating System : Windows XP 32-bit SP2
Note: in some of the images above a 120 mm fan can be seen resting on the motherboard, this was removed for testing. Only the fans that came pre-installed in the case and those that came as part of the motherboard (in the cooler) and the graphics card (in the cooler).

In order to test the temperatures, the system is put under load using the Folding at Home (FAH) software. FAH is a scientific computing application that processes and analyses the behave of proteins for research for Stanford University. The application can be configured to use between 10 and 100% of available processing power on both the CPU and any graphics cards installed. Both the CPU and GPU will be loaded at 100% for maximum heat generation in the case.

Temperatures are recorded as reported by Speed Fan.

The FAH client was ran for 30 minutes in order to stabilise the system temperature. After this time, the temperature was recorded once per minute and then the results averaged and the temperature reported by Speed Fan recorded below:

Sensor Reading 1 Reading 2 Reading 3 Average
CPU 75 75 75 75
GPU 82 82 82 82
Local 65 65 65 65

The problem that the fans have on the roof panel is that they don't actually move much air, especially since they are trying to draw through the holes in the roof panel. Consequently there is a poor airflow around the case. I tried just inserting a 120 mm at the front of the case to promote a draft and 10 degrees was pushed off the temperatures straight away. So I’d recommend moving the fans to push the air from front to back as opposed to through the roof. This demonstrates that the case doesn't have a major issue with hot hardware such as this, but a bit of effort is needed to set the fans up to promote the good cooling that is available.

Summary

Cooling – 10/30

The default configuration with the basic two 80 mm fans on the roof panel resulted in poor airflow, arguably producing more heat than they helped to dissipate! But when just a single 120 mm fan was placed at the very front the air flow was drastically improved and 5-10 degrees was shaved off the running temperatures. So whilst the case can tolerate hot hardware, which is quite likely if you are using equipment in a rack mount environment as part of a file server farm perhaps, it does take some extra investment in terms of time and most certainly money to get some high CFM fans that can just the air through the case. Flipping the 80 mm fans around to exhaust gas out of the case and using a pair of 120 mm fans to pull cool air in from the front should keep hardware running at far more respectable temperatures.

Features – 13/20

The locking security panel is a nice touch that adds a good dose of aesthetic pleasantries. The front mount USB ports are also a welcome sight. The single biggest feature has to be the adjustable braces on the cross bar, ideal for securing expansion cards such as graphics cards.

Design – 18/30

The general chassis, particularly internally is very sturdily made with think steel work, the handles are solid plastic and again feel sturdy and reassuring. The two thumb screws for removing the top panel are a welcome relief from cases requiring the removal of a dozen screws that secure the top panel down. The roof panel and front security panel all fitted well with no distortions and importantly the case conformed to the 19” rack standard meaning it can be bolted in.

The lack of a back plane means that cable routing is really non-existent unless you are able to trap cables under the motherboard perhaps. Ample drive bays both 5.25 and 3.5” are available meaning that this could work as a file server with numerous drives. The interior is cavernous and easy to work in.

Value for money – 15/20

For just under £40 you get a lot of case for your money, for the most part the case is rigid and well built with good metal work as the chassis and metal work to build onto. despite the top panel being slightly flimsy and easy to dent. The materials are good and the case is comfortably large but not excessively heavy.

Overall – 56%

Monday 5 October 2015

Back to school

Back to school

In 2010 my employer offered me a budget for personal development and training, equivalent to £1300.

Fast forward to July 2012, I've spent £200 on some books (that I haven't used!) and I'm close to losing my budget if I don't spend it. I'm a personal believer in continuous technical development and I've also got over the stress of my BEng, so I'm in the mood that I could do a Master's degree.

I was supposed to be working in a communications area of the business so I took the obvious decision of finding a Communications MSc. About a month prior to starting the course work changed and the University also declared that they were not going to run the course on a part-time, long distance basis. Thanks Uni!

Doing some more digging I find a brilliant sounding course at Cranfield University called Military Electronic Systems Engineering at Cranfield University. So in October 2012 I did the first module of the course, Electromagnetic Propagation and Devices.

Fast forward a bit more to today, October 2013, I am back at Cranfield University studying the second module in the MESE MSc - Digital Signal Processing, Statistics and Analysis.

This year, I'm staying in the officers mess in Templar Hall.

The rooms are comfortable, with plenty of storage space but quite plain and basic. The rooms are large and spacious, the beds are "wide singles" or "narrow doubles" depending on how you look at it.

My bedroom - brilliant I think!
From my room, which is now Wi-Fi enabled thanks to a third party system. I've got a nice view of Kitchener Hall from my room too.
 
Kitchener Hall
Kitchener Hall

Wish me luck!