Writing Cycle and Memory Types
As with any other flash memory-based storage, the SSD has a limited writing cycle. This depends upon the type of flash memory being incorporated. Two of the most cost common kinds are:
- Single Level Cell (SLC). This type of memory stores data in memory cells. Every one bit of data is stored in one memory cell. The production cost is high, but the writing cycle may reach as much as 100.000 cycles.
- Multi Level Cell (MLC). Contrary to SLC, this type of memory stores data in multi-level memory cells that can fit in larger amounts of data in each cell, allowing for higher data density. It is cheaper to produce, but the writing cycle is only 1/10 of the SLC, and it is also slower in terms of speed.
When an SSD has reached its writing cycle limit, it loses the ability to write. If you want to add some more data, you will have to buy a new one as by then the SSD would only be able to read what is already stored in it. Theoretically, an MLC SSD can be used for three to five years, depending on its usage. SLC SSDs last much longer. Deleting a file, formatting or defragmenting an SSD reduces its writing cycle. Unfortunately, aside from shortening its life, such activities will also reduce an SSD’s performance.
Microsoft introduced a new function for SSDs in its latest operating system, the Windows 7. It is called TRIM, and it aims to improve the speed of SSDs as well to suppress the type of usage which could potentially reduce SSD writing cycles. Now, how does it work?
When a file is deleted, usually the operating system would only mark the corresponding area in which the file as located as “overwriteable”, thus allowing other data to be written on it. This kind of activity is harmless to ordinary hard disks, but flash memories would suffer some loss of performance if one block (every block consists of several pages, usually 128, measuring 4 KB each) has been used for this kind of operation more than once. Data in an SSD can only be deleted per-block.
This is where the TRIM comes in. When a command to delete is issued, the operating system will hand over the controls to the SSD’s firmware. The SSD then copies all the blocks containing data to be deleted into a cache, erases the block, re-writes the data into the block in the cache level, and finally re-writes it back into the flash memory.
Unfortunately, TRIM’s functions will only kick in when you or the operating system issued a delete command or data erase. When a data is directly overwritten, TRIM will not be able to do anything to stop the operation from further reducing the life cycle and performance.
TRIM requires a compatible drive as well as an operating system which supports it, such as Windows 7. Beginning from kernel revision 2.6.28, LINUX has also added support for TRIM. On the hardware side, you can ask the manufacturer of your SSD to see if there is any new firmware release which enables TRIM support.
Another way to improve an SSD’s performance is by using Microsoft’s latest file system, the exFAT. Microsoft claims that it would optimize SSD usage. This file system aligns its metadata and the cluster heap (a space allocated for files and folder) according to the optimal writing sped of a flash memory. Unfortunately, only Windows Vista with Service Pack 1 and above have support for it. A separate update is also available for Windows XP users. We will discuss exFAT in details in another article.