On Mon, Apr 12, 2010 at 19:19, David Magda <dma...@ee.ryerson.ca> wrote: > On Mon, April 12, 2010 12:28, Tomas Ögren wrote: >> On 12 April, 2010 - David Magda sent me these 0,7K bytes: >> >>> On Mon, April 12, 2010 10:48, Tomas Ögren wrote: >>> >>> > For flash to overwrite a block, it needs to clear it first.. so yes, >>> > clearing it out in the background (after erasing) instead of just >>> > before the timing critical write(), you can make stuff go faster. >>> >>> Except that ZFS does not overwrite blocks because it is copy-on-write. >> >> So CoW will enable infinite storage, so you never have to write on the >> same place again? Cool. > > Your comment was regarding making write()s go faster by pre-clearing > unused blocks so there's always writable blocks available. Because ZFS > doesn't go to the same LBAs when writing data, the SSD doesn't have to > worry about read-modify-write circumstances like it has to with > traditional file systems. > > Given that ZFS probably would not have to go back to "old" blocks until > it's reached the end of the disk, that should give the SSDs' firmware > plenty of time to do block-remapping and background erasing--something > that's done now anyway regardless of whether an SSD supports TRIM or not. > You don't need TRIM to make ZFS go fast, though it doesn't hurt.
Why would the disk care about if the block was written recently? There is old data on it that has to be preserved anyway. The SSD does not know if the old data was important. ZFS will overwrite just as any other filesystem. The only thing that makes ZFS SSD friendly is that it tries to make large writes. But that only works if you have few synchronous writes. _______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss