Solid-state drives are generally preferable to hard disk drives on any modern PC. Swapping an old HDD with an SSD is a key computer upgrade for good reason, as SSDs offer better performance overall compared to HDDs, and they're now more affordable than ever.
And while an SSD can last for quite a long time before you need to worry about any performance degradation, there are just a few things you should know about how write amplification impacts your SSD's life cycle.
What is write amplification?
And how does it impact SSD performance?
Write amplification is an internal SSD issue that arises from how NAND flash SSDs function. Write amplification is essentially the number of times a NAND chip within an SSD is written to after the computer performs a single write. NAND flash wears out after too many writes, so the higher the write amplification, the less life you get out of an SSD.
Write amplification also increases internal write traffic within the SSD, which can lead to slower SSD performance. The ideal SSD write amplification factor (WAF) is 1.0, meaning a write triggered from the computer equates to only one write on the SSD. Original NAND SSDs would sometimes have write amplification factors of 2.5 or higher. This led to diminished performance and a diminished life cycle of the SSD.
Even now, some NAND SSDs will have high write amplification factors, which can lead to reduced performance and escalated storage degradation.
Write amplification doesn't exist in CMR HDDs (though it does in SMR HDDs, thanks to overlapping tracks) or DRAM SSDs, as DRAM-backed storage doesn't wear out the same way. So if you're using a CMR HDD for storage, you don't need to worry about write amplification.
How to find your SSD's write amplification factor
Do you need to worry about your SSD quality?
You can easily calculate the write amplification factor of a solid-state drive with a simple bit of division.
WAF = NAND Writes / Host Writes
You can check this by dividing physical media/NAND bytes written by host bytes written, using the drive’s SMART logs. This is via the OCP Cloud Health log SMART parameter at 0xC0, and found by comparing "Physical Media Units Written" on the NAND side, versus the data units written, which comes from the host. If you write 4GB of files to the drive, but the drive writes 5GB, then you have a WAF of 1.25.
Modern SSDs tend to have write amplification factors of one or close to one in sequential write, but may have higher write amplification factors in workloads that have a degree of random write due to FTL's mapping becoming fragmented, forcing more garbage collection.
To fully understand the quality of your SSD, you'll want to calculate your WAF with a mix of workloads, as over-sampling from random write or sequential write will skew the WAF. Unless you know your particular use is going to utilize one write factor more than the other.
Can you fix it?
Mitigating write amplification can protect the life of your SSD.
No one wants an SSD that dies before its time or suffers performance loss after use. While write amplification is, in part, just how NAND flash SSDs work, there are ways to mitigate the damage caused by write amplification.
To avoid performance and lifecycle degradation of your SSD due to write amplification, you'll want to make sure you keep free space on your SSD. Generally, keeping at least 10–20% of your SSD as free space reduces how often your SSD needs to utilize garbage collection and clean up unused data blocks. You may also need to enable the TRIM command in your operating system to ensure garbage collection is run efficiently on your SSD when it does need to occur. Some SSDs offer Active Garbage Collection to clear junk data, which might help control how often garbage collection runs on your SSD.
You can also opt for an SSD with adequate DRAM for page-level mapping alongside decent over-provisioning. The controller and the FTL size matter, where a smaller FTL can reduce write amplification thanks to the finer mapping capabilities. This isn't the ideal solution for most, but if you know your average workload includes a lot of random writes to the SSD, this is one way to mitigate the write amplification factor on your SSD.
Other basic maintenance, like updating your SSD firmware, can help mitigate write amplification, as firmware updates may improve performance and manageability, helping offset the issues that arise with write amplification.
Other ways to extend your SSD's lifecycle
There are other things you can do to keep your SSD functioning in top shape.
In addition to mitigating write amplification, you can make a few more tweaks to your PC to keep your SSD operating in top form for as long as possible.
Keeping your SSD cool, either with active cooling in your PC or with an SSD heat-sink, can help extend your SSD's lifespan, as drive performance can degrade with overexposure to heat.
You'll also want to avoid overfilling your SSD, as this can increase wear on the SSD and eventually lead to a premature failure of the solid-state drive. Reducing temporary files and cached data can assist in keeping your drive clean and maintaining the 10–20% of free storage space required to ensure your SSD is cleaning junk data efficiently. But mostly, just avoid unnecessary writes to your SSD. If you use an application that performs a lot of random writes to your drive, it may be worth installing that program on a different drive to keep your SSD in optimal condition.
