Bob Friesenhahn <bfrie...@simple.dallas.tx.us> wrote: > I have heard quite a few times that TRIM is "good" for SSD drives but > I don't see much actual use for it. Every responsible SSD drive > maintains a reserve of unused space (20-50%) since it is needed for > wear leveling and to repair failing spots. This means that even when > a SSD is 100% full it still has considerable space remaining. A very > simple SSD design solution is that when a SSD block is "overwritten" > it is replaced with an already-erased block from the free pool and the > old block is submitted to the free pool for eventual erasure and > re-use. This approach avoids adding erase times to the write latency > as long as the device can erase as fast as the average date write > rate.
The question in case if SSDs is: ZFS is COW, but does the SSD know which block is "in use" and which is not? If the SSD did know whether a block is in use, it could erase unused blocks in advance. But what is an "unused block" on a filesystem that supports snapshots? >From the perspective of the SSD I see only the following difference between a COW filesystem an a conventional filesystem. A conventional filesystem may write more often to the same block number than a COW filesystem does. But even for the non-COW case, I would expect that the SSD frequently remaps overwritten blocks to previously erased spares. My conclusion is that ZFS on a SSD works fine in case that the the primary used blocks plus all active snapshots use less space than the official size - the spare reserve from the SSD. If you however fill up the medium, I expect a performance degradation. Jörg -- EMail:jo...@schily.isdn.cs.tu-berlin.de (home) Jörg Schilling D-13353 Berlin j...@cs.tu-berlin.de (uni) joerg.schill...@fokus.fraunhofer.de (work) Blog: http://schily.blogspot.com/ URL: http://cdrecord.berlios.de/private/ ftp://ftp.berlios.de/pub/schily _______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss