Remix.run Logo
tim-tday a day ago

The problem with filling up a ssd is that it writes and rewrites the same blocks over and over defeating the built in wear leveling.

Filling an ssd creates the one situation where nand wear out is a problem.

avidiax 13 hours ago | parent | next [-]

The SSD firmware is smart enough to rotate the hot sectors over the entire space gradually.

It is a problem to have a full SSD from a performance perspective. Modern SSDs use pSLC (psuedo-single-level-cells) because they can write much faster. When you write to an SSD, you generally write in pSLC mode first, and once the data goes cold, it will get written back to MLC/TLC storage.

Once you are very full, pSLC gets disabled or becomes less effective, affecting write speeds.

There is also an effect known as write amplification that is exacerbated when a disk is nearly full. You want to write 4kb, but the available erasure zones are all full (either valid or invalidated sectors), so now the SSD has to erase a 4MB zone and compact the data there (along with your new 4kb) to write your 4kb.

This gets even worse when you have a filesystem that isn't SSD optimized, such as EXT4. It will cause further write amplication.

Keep your SSD's <80% full if you want good performance.

cma 20 hours ago | parent | prev [-]

Won't modern wear leveling migrate rarely written data to spread new writes out to its blocks?