>BTW a nice userspace program for the (ext4) FITRIM ioctl() command can be found here:
In what circumstances would you want to use this rather than just mounting with the 'discard' option?
I'm curious because I've just bought my first SSD and I'm wondering how best to maintain performance. At first I was thinking of reserving some unpartitioned space, but then it occurred to me that it would probably be better just to use an ext4 partition. That way I can use the space if I really need it at some point, but it can be 'reclaimed' by the SSD for its own purposes when there's nothing stored there. Is that not correct?
Posted Nov 3, 2010 15:31 UTC (Wed) by slothrop (guest, #69834)
[Link]
I have performance problems with my first generation
Vertex SSD if I use the ext4 discard option. So in
this case it is better to run fstrim as a cron job every
night. But if you have a good SSD with a fast ATA trim
implementation, the discard mount option is just fine.
The second half of the 2.6.37 merge window
Posted Nov 3, 2010 16:45 UTC (Wed) by nye (guest, #51576)
[Link]
Ah, that makes sense - thanks.
The second half of the 2.6.37 merge window
Posted Nov 6, 2010 4:13 UTC (Sat) by Lope (guest, #65656)
[Link]
The question of how often do you want to run fstrim on the whole filesystem is a little tricky, because it depends on what type of workload you are running. If you are able to fill up you disk within one day you probably should reclaim the space (discard) at least one time a day, but on regular desktop I very much doubt that.
So, what you probably want to do (if you want to be exact) is to watch the amount of data written to the filesystem (you can do that through /sys/fs/ext4/<device>/lifetime_write_kbytes assuming that on <device> is ext4 fs) and when it is going to reach some threshold (like 80% of device size) you would need to start doing the discard (note that FITRIM on ext4 will return amount of reclaimed space). But all of this may be an awful overkill for simple desktop:). And aside of that there are some very bad devices out there which are showing significant performance regression even at 50% fs saturation. And of course if you have more partitions on the same device ... it gets even more complicated :)
All that said, if you are ok with doing it once a day (and you are not even noticing it) it is good thing to do. But if it disturbs you, you probably would not want to do it so often, or at least do it per partes (which you can do with a little scripting) through a longer period of time.
The second half of the 2.6.37 merge window
Posted Nov 6, 2010 18:08 UTC (Sat) by slothrop (guest, #69834)
[Link]
Good points,
I write ~30GB per week to my 30GB SSD (just one partition).
So I changed cron from running fstrim daily to twice a week.
The second half of the 2.6.37 merge window
Posted Nov 6, 2010 4:27 UTC (Sat) by Lope (guest, #65656)
[Link]
If you do want to benchmark discard performance of you SSD you can use this tool :
BUT, there are some very bad devices which might be corrupted by sending lots of small TRIM's so better be careful (Or blame your vendor for doing bad job!).