Wear and tear of SSDs
The implementation of SSDs is growing quickly. They are fast, silent, lightweight and reliable if the user knows the technology and uses them in the right way.
Unlike traditional hard drives, data in SSDs are not stored on a magnetic surface but inside flash memory chips (NAND flash). By design, an SSD is made by a motherboard, few memory chips (depending on the size in GB of the drive) and a controller that controls all the operations.
The memory of SSDs is a non-volatile memory, in other words, it’s able to retain data even without power. We can imagine the data stored in the NAND flash chips as an electric charge preserved in each cell. With that in mind, the question arises: how long is the lifespan of an SSD?
Types of flash memory and the wear and tear of the memory cells
It is known that the writing operations wear out the memory cells of an SSD, reducing its life. But will the memory chips wear out all in the same way? The answer to this question will enable us to discover more about the potential lifecycle of our SSD.
The memory used in flash chips are not all the same, there are actually three types of NAND:
- SLC (Single Level Cell) - 1 bits of data per cell
- MLC (Multi Level Cell) - 2 bits of data per cell
- TLC (Triple Level Cell) or 3-bit MLC - three bits of data per cell
You can see: the more levels a cell have, the more bits can be stored in a cell and in the end, the higher capacity the chips. Thanks to technological advances today we have SSDs with several GBs at an affordable price. No wonder that a recent report shows that TLC memory type should represent in the last quarter of this year about 50% of total NAND chips, with a cost of production about 15% - 20% less compared to MCL chips.
However, there is a downside: Adding more bits to the cells reduces their reliability, durability and performance. It is quite easy to determine the state of an SLC cell (empty/full) while it is more difficult to do the same for MLC cells. Furthermore, a TLC cell requires four times the writing time and 2.5 times the reading time of an SLC cell. In addition, storing multiple bits per cell also means to speed up the wear process of the NAND memory.
A memory cell is made by a floating-gate transistor. It consists of two gates called Control gate and Floating gate insulated by a layer of oxide (you can see a schematic representation on the right). Each time operations are performed, e.g. programming and erasing the cell, the oxide layer that traps electrons on the floating gate wears. Consequently, as the oxide layer is weakened it may occur an electron drain from the floating gate.
Since the state of a NAND cell is represented by the number of electrons on the floating gate even few electrons can make the difference between one state and another. In SLC cells, the problem is less felt because there are only two states to recognise, but in TLC cells (or 3-bit MLC) the problem is more serious because there are 8 different states. Moreover, production developments mean the oxide layer is getting more and more thin, wearing is therefore faster and the cells more subject to data loss because less able to preserve the electric charge.
How long does an SSD last?
We can consider this question the £1 million question, obviously it’s not possible to answer it in a scientific way but… continue to read!
The trend in terms of SSD is to focus on developing products based on 3-bit MCL (TLC) memory. TLC memory is beginning to dominate the market for SSDs. In common use, it seems that the 2-bit MLC technology is excessive in terms of durability and performance, not to mention the SLC whose characteristics are necessary only for very few applications and that is almost completely disappearing. In other words, the manufacturers decided to trade lifespan in favour of cost reduction in order to expand the spread of flash memory and its storage capacity.
However, it seems that there is no worry about the duration of an SSD. In an experiment conducted by The TechReport on six SSDs, in a test to understand how an SSD can withstand write operations, two drives out of six have managed writing operations for two petabytes of data and in any case all SSDs tested were able to write hundreds of terabytes without problems.
Assuming a writing of two terabytes per year, the results of the experiment resulting in a duration of SSD equal to 1000 years (2PB = 2000 TB / 2TB year = 1000 years). If we were to write even more than 2TB/year, in any case, we'd be able to use our SSD quietly for years and years and years.
Monitor the health status of a Solid State Drive
As for hard drives, there is also for SSDs - a MTBF value (Mean Time Between Failure). In technical sheets that show the reliability this value is around 1.5-2 million hours. Also, SMART technology applies to SSDs. If enabled, this technology can inform you if one or more operating parameters exceed preset thresholds.
Usually, SSD manufacturers provide utilities together with their products, who able not only to show SMART parameters but also the total amount of data written to the device and also provide an synthetic indication about its health. For example, here you can see the output of the Samsung Magician software.
In this example the SSD in question has already been written about three terabytes of data, the device status is good and SMART parameters are all OK.
Other utilities go even further and also try to estimate the remaining life of the drive on the basis of the use that has been made to date.
An example of such a tool is shown in the following screenshot, where the drive appears to be in excellent health and the estimated lifecycle is a little over nine years available. We used here SSDLife by BinarySense, but there are many available.
Some tips for a healthy “lifestyle” for your SSD
Here few precautions to keep your drive healthy for a long time:
There is no need to use a defrag utility to reduce file fragmentation on SSD. This operation is used on traditional spinning hard disks to reduce the movements (and the time) used by heads to access the various fragments (clusters) of a file. But on the SSD all memory cells have the same access time and the operation is unnecessary and even harmful (moving clusters in contiguous spaces requires write operations that wear the SSD)
Do not saturate the capacity of the drive and use over-provisioning
Don’t use the SSD drive to the limit of its capacity. Many manufacturers implement in their drive the practice of over-provisioning i.e. they reserve a permanent free space on the SSD (usually around 10% of capacity). This free space, not accessible to the user or the operating system, is used by SSD as a sort of memory buffer to store data temporarily while the controller executes the erasure of the NAND flash blocks, prepares free blocks for the use and "moves" the data to ensure a level of constant wear to all cells (wear-levelling algorithms).
Enable TRIM in the operating system
Most of the SSD drives integrate a function called garbage-collection (GC) that is a function that prepares the memory cells to receive new data. The TRIM command in many modern operating systems makes GC more efficient. Using TRIM command the operating system notifies the SSD when data is marked as erasable or as invalid and the operating system sends this command to the drive every time you delete a file. Make sure your operating system supports the TRIM command and check that TRIM is active.
Use the SSD drive where useful
Definitely one of the advantages of SSDs is the high speed of data reading while writing operations wear the drive and are slower because before writing a block, it must be deleted. It follows that the SSD provides better performance and more advantages in applications where the reading is preponderant in relation to writing.
And finally, a suggestion always valid for any device: make a backup of your data periodically. The estimated lifetime of an SSD does not guarantee the operation of the device until the estimated date and cannot consider unexpected events like shocks, voltage spikes, human errors and other circumstances that can cause damages and make all the data inaccessible at a time.