Friday, March 23, 2012

Solid State Drive Tweak Guide - Make it Fast make it Last!

The wonders of fast flash storage - a fast death if not care full
So you finally get yourself a new Solid State Drive(SSD), everything will load and write much faster than a normal Hard drive due to not having any mechanical moving parts, but did you know SSD's can also suffer from severe wear and loss of capacity if you dont take certain precautions?....

Hard Drive vs Flash Media (SSD) - write cycles!
We have covered before , how and why hard drives work, and how they are prone to mechanical failure, heads, rotors motors can die on us at any moment, and after days of use , data can get fragmented all over the plates, taking even longer to read.
 SSD is structured like  hard drive, with an index or fat table, but memory blocks can be accessed instantly and in parallel too, By the time a conventional hard drive moves its mechanical parts to look for and read 10 files, flash memory media does the same in a third or less time.

The problem comes from the flash media itself, the name Flash comes from the fact that every block of stored information is practically Zapped with electricity to modify it and store a new value, at a microscopic level you can see each block of data flashing when data is written, and this does not escape the laws of physics, much like a light bulb it can only "flash" so many times.

SSD's have been sold to consumers with an estimated  life of 5,000 to 10,000 write cycles per block of information, this means that after writing over a single block 10,000 times we could expect the block to die,this is why you dont want to do heavy writing processes on an SSD drive, even defragmenting can kill a drive faster, and its useless due to the instant readability of the media!

Wear leveling - burning your blocks evenly :D
Several measures have been put in order to prevent an early death to SSD's data blocks, the most common and standard being Wear leveling,  new data is written on "new" or "unused" data blocks, this is done to have an "even" or "leveled"wear on the drive.

SSD's hate being full - try to keep some free space
Of course this brings another problem, since there is data that will remain unchanged and static in certain blocks, the SSD controller has juggle and move data periodically in order to keep the wear even, this is done automatically inside the drive, and without much of a performance hit to the user, the problems comes when the drive is nearly full, as it will quickly be running out of "free unused" blocks and will have to move more data in less time, accelerating the wear... so keep as much free space as possible :D

How to increase the life of your Solid State Drive - minimizing and stopping useless writes!
So now that we know that we must keep writes cycles to a minimum, we have to take it into our hands to Tweak and configure our systems, the use of a modern recent Operating system is a must, because old systems like Windows xp do not know about write cycles and just chug data down to the drive, Windows 7 contains several built in optimizations that are applied when it detects a SSD in use, but there are many more things to do.. so here is the list of important things to check and how to do it :D

1-Check your SSD partition Aligment - for a speedy drive!
Ok so this does not pertain exactly to the wear of the drive, But it is important to check, because if the partition is not correctly aligned, your drive will not perform as intended, a quick check up can be done inside windows 7 with the command "Msinfo32" on the Start-> Run/Search box, navigate to "components" then to "Storage" and finally to "Disks", look up your SSD and check the "Partition Starting Offset", if the number is divisible by 4096(full values without decimals) you are good to go,  If you install windows fresh, or use a recent cloning utility chances are you wont have any problem, but its always good to check, because this will bring you so many performance issues if incorrect!