Not posting a link since this is an advertisement from Diskeeper Authors but the first part which I have posted does explain about how SSD degrades over time.
You bought SSDs to increase your system performance, but you noticed that the performance has degraded since you first bought them. Can SSD performance degrade over time and is there a way to prevent this? The answer is YES and YES.
The reason for this degradation is an undesirable SSD phenomenon called the Write Amplification Factor (WAF), a dirty word for SSDs. This is a numerical value that indicates the actual amount of data that was written to an SSD in relation to the amount of data that was requested to be written from the Host (i.e. Windows OS System)
data written to the SSD
WAF = ——————————
data written by the host
For example, an application on the Windows Server system writes out 128kb of data to the SSD, but internally on the SSD, 512kb of data had to be written on the SSD for this to occur. This will degrade the SSD write performance.
In this example, the WAF = 512kb/128kb = 4 ! This is bad, a 128kb write from the host
! resulted in 512kb of internal writes on the SSD
Ideally, you want a WAF = 128KB/128KB = 1 ! This is the best case, a 128kb write from the host
! resulted in 128kb of internal writes on the SSD
Now, why does this occur. Unlike HDDs, data cannot be directly overwritten on a disk. On SSDs, data can only be written to erased spaces. When you have brand new initialized SSD, all the pages are in a free/erased state, so no problem in finding free/erased spaces to write new data. But as the SSD starts to fill up with data, resulting in erased spaces having to be created that causes the WAF to increase. I can go into more detail on this but will save it for another time. Suffice to say, a higher WAF value means SSD performance degradation.
Now that you have the knowledge on the restrictions of writing to an SSD, let us get to the real questions.
Do SSDs degrade over time?
The answer is YES but it has to do more with the SSDs filling up over time. I have seen recommendations on the web to keep free space on SSDs anywhere from 10% to 30% to avoid this degradation. With less free space on a highly I/O intensive system, a couple of things occur:
- There are less free spaces to write to, so some extra overhead may have to occur like block erasures to allow the new updates to occur. This increases the WAF – Not a good thing.
- With less free space, file data may get spread out to different locations on the SSD. For example, in the best case, 10 pages of file data that is being updated are all on the same block. If the block needs to be erased to be updated, then just that one block needs to be updated. But if those 10 pages are on 10 different blocks, then in the worst case, those 10 blocks have to be erased and re-written – More overhead and a higher WAF.
Some SSD technology has been introduced to help with this but did not fully eliminate the problem.
➣SSDs are overprovisioned. For example, a 1TB SSD actually contains 1.1TB of data space. This extra space (seen only by the SSD internals) helps to allow the WAF to remain low.
➣SSD Garbage collection and Trim. Both of these processes include freeing/erasing spaces in the background so new writes can occur quickly on these newly erased spaces.