3 ms·
GC only works while the drive is idle and should improve cell life drastically because you do a whole lot less read/modify/write cycles for small writes in the
by jeffffff 16y ago
GC only works while the drive is idle and should improve cell life drastically because you do a whole lot less read/modify/write cycles for small writes in the long run. Assuming a 256 GB drive with a write endurance of 1,000,000 cycles and a write speed of 200 MB/s, it would take on average 40 years to burn out the drive by sequentially overwriting its contents. The problem with read/modify/write is that if you are doing random writes of 4 KB with an erase block size of 512 KB at 50 MB/s, the effective internal write speed is 6 GB/s and you will burn out your drive in 1-2 years instead of 40. A full GC cycle is essentially a sequential rewrite of the drive. Let's say a full cycle frees up 16 GB, as 4 GB overprovisioning per 64 GB is standard. You can write 16 GB without any read/modify/writes, and for every 16 GB you write, you will have to do an additional 256 GB of writes for the GC cycle. That sounds awful, but compared to a bunch of read/modify/writes the drive life will go up by a factor of 8. The average write speed will also be higher. To avoid long pauses the GC only runs when the drive is idle, so for things like database servers trim is essential, but on a laptop/desktop GC is plenty good enough.
- caf 16y agoI may have been unclear - I'm not denying that GC is a good thing, but GC with TRIM is substantially better again than GC without. TRIM is just a way of putting more blocks into the G, to be C'd.