Solved

Does SSD drives struggle with performance when filled to full capacity? Samsung 960 PRO M.2 slow speed

Hi there,

I just did a benchmark for the first time, and may have gotten some strange results.

I'm getting read 2017 MB/s and write 343 MB/s on 960 Pro according to Samsung Magician.

I'm using an M.2 gen 3 slot in AsRock x370 Professional Gaming with Ryzen 1700x.

I just updated the NVMe driver. It should be mentioned that the drive is quite full, 36 gb left of 1 TB. Could that be the reason?
4 answers Last reply Best Answer
More about ssd drives struggle performance filled full capacity samsung 960 pro slow speed
  1. Best answer
    Yes, overfilling the SSD will slow writes significantly. Optimally, you don't want to fill no more than 90%. You need to clean up to get write performance back.
  2. kanewolf said:
    Yes, overfilling the SSD will slow writes significantly. Optimally, you don't want to fill no more than 90%. You need to clean up to get write performance back.


    Thank you Kanewolf.

    I just deleted a small amount, like 20 GB, and my write speed multiplied by 6. 3000+/2000+ MB/s. That explains alot, thanks! Don't ask why I didn't try this first, I apologize for that.
  3. Flash memory can't overwrite a 1 with a 0, or a 0 with a 1. It actually has a third, erased state which must be the intermediate step. 0 -> erased -> 1, or 1 -> erased -> 0. If you're an EE and have played with EEPROMs, same thing.

    The erased -> 0/1 step is blazing fast, which is why SSDs are so much faster than HDDs.

    The 0/1 -> erased step is slow, nearly as slow as a HDD (slower on some older SSDs). To counteract this slow step, SSDs will pre-erase deleted sectors while the drive is idle. This allows it to keep a buffer of pre-erased sectors read for lightning-fast writes. This is why TRIM was so important - it's how the OS told the SSD which sectors were safe to erase.

    If you fill a SSD up to near capacity, it can't keep as many sectors pre-erased. It ends up having to erase sectors which have been freshly-deleted before it can write new data. This causes write speeds to drop to HDD-like speeds. Hence the recommendation to always keep about 10%-15% of the SSD empty - so there's room for it to pre-erase cells.

    (Newer TLC SSDs also initially write data in SLC mode, then re-write it as TLC while the drive is idle. If the drive is full, there isn't enough space to write in SLC mode, and it ends up having to write directly to TLC mode.)
  4. Solandri said:
    Flash memory can't overwrite a 1 with a 0, or a 0 with a 1. It actually has a third, erased state which must be the intermediate step. 0 -> erased -> 1, or 1 -> erased -> 0. If you're an EE and have played with EEPROMs, same thing.

    The erased -> 0/1 step is blazing fast, which is why SSDs are so much faster than HDDs.

    The 0/1 -> erased step is slow, nearly as slow as a HDD (slower on some older SSDs). To counteract this slow step, SSDs will pre-erase deleted sectors while the drive is idle. This allows it to keep a buffer of pre-erased sectors read for lightning-fast writes. This is why TRIM was so important - it's how the OS told the SSD which sectors were safe to erase.

    If you fill a SSD up to near capacity, it can't keep as many sectors pre-erased. It ends up having to erase sectors which have been freshly-deleted before it can write new data. This causes write speeds to drop to HDD-like speeds. Hence the recommendation to always keep about 10%-15% of the SSD empty - so there's room for it to pre-erase cells.

    (Newer TLC SSDs also initially write data in SLC mode, then re-write it as TLC while the drive is idle. If the drive is full, there isn't enough space to write in SLC mode, and it ends up having to write directly to TLC mode.)


    Great explenation, I could understand everything.
    I have choked my SSD's for so many years, so what a waste of performance.. Wish i knew this.
Ask a new question