Understanding SSD Drives
Solid state drives (SSD) are most commonly packaged into a standard 2.5 inch hard drive casing utilizing a SATA connection; however they are also available in a PCI Express card format. This format allows more data channels to be used, resulting in yet faster transfer speeds. Some laptops also have SSD drives soldered directly to the motherboard to help save space; this however can limit future expandability.
Important factors of an SSD
While sequential read and write speed is usually one of the fastest parts of an SSD, it isn’t always the most important factor. In an everyday use case, it is much more likely that data is written and read from random locations on the disk. This is why SSDs have become advantageous over traditional hard drives. There are no moving parts, and all the information is equally accessible. This drastically cuts down on random read and write latency.
Blocks and pages
The way SSDs are made is that the storage is sectioned into blocks, a typical block size being about 512KB in size. Each block is then further subdivided into 4KB pages, each block containing 128 pages. As information is written to the drive, it occupies a page. While each page can be read and written to, it is only possible to delete an entire block. Also, pages cannot be overwritten; they must be empty first to write data to them.
Loss of performance
When a file is deleted from your computer the operating system marks that page as available; however the actual SSD controller is never notified. Therefore, when writing more data to the drive, if all the other pages are full, the SSD controller copies that block to the SSD’s cache, erases the entire block, rewrites the pages that are to be kept, and then writes the new data in the newly erased pages. This results in performance degradation when the drive becomes filled. Unfortunately in order to fix this you cannot simply format. The system needs to perform a secure erase. This is done via a utility released from the manufacturer. The utility clears all blocks on the drive and restores your drive to its peak performance.
Use of the TRIM command helps reduce the loss of performance when an SSD becomes filled. Newer operating systems, such as Windows 7, that support the TRIM command queries the drive for its rotational speed determining the drive is an SSD or a traditional hard drive. If it is an SSD, the operating system automatically turns off defrag and enables the TRIM command on that drive. Now clearing deleted pages occurs during the delete process instead of during the write process. This helps to increase write speeds even as the drive becomes full.
This structuring of blocks is what allows for an SSD’s extremely fast read and write speeds. The storage controller allows the computer to read and write from multiple blocks at one time. Therefore if you can read/write a file at speed x on one block, if you spread that file across 10 blocks, the file can be read/written at speed 10x.
SLC vs. MLC
SLC stands for Single Level Cell flash memory. It is three times faster to write to compared to Multi Level Cell flash memory (MLC). Although you get slower speed from MLC, you do get twice the capacity at the same cost. Therefore it is typical that most consumer level SSDs use MLC memory, while SLC memory is used for enterprise level server SSDs. MLC drivers are still plenty fast for the average user and are still a noticeable improvement over traditional hard drives.
Eventually the SSD drive will stop working. All SSD drives have a limited number of times that blocks can be erased before they cannot be used further. When looking to purchase an SSD, measurement of the lifetime is usually given in mean time between failures (MTBF). The MTBF is usually over 1,000,000 hours for a good SSD.
Current market offerings
Dell's Optiplex 980 is configurable with a 128 GB SSD that offers 150 MBps transfer rates. It is a Dell branded SSD and is currently a $315 upgrade(price taken from Dell's site 10/28/10). Dell allows for two hard drives in the system. The speed difference in everyday applications will be noticeable, however due to size limitations, it is recommended that this be used as the operating system and main application drive. While using a second drive for storage of files.