TRIM clustering

Alexander Leidinger Alexander at Leidinger.net
Tue May 3 14:33:43 UTC 2011


Quoting Bernd Walter <ticso at cicely7.cicely.de> (from Tue, 3 May 2011  
15:25:17 +0200):

> On Tue, May 03, 2011 at 01:48:26PM +0200, Alexander Leidinger wrote:
>> Quoting Pawel Jakub Dawidek <pjd at FreeBSD.org> (from Sun, 1 May 2011
>> 15:37:52 +0200):
>>
>> >On Sun, May 01, 2011 at 12:06:56AM +0200, Alexander Leidinger wrote:
>> >>On Sat, 30 Apr 2011 00:28:31 -0700 Jeremy Chadwick
>> >><freebsd at jdc.parodius.com> wrote:
>> >>
>> >>> On Sat, Apr 30, 2011 at 09:54:02AM +0300, Alexander Motin wrote:
>> >>
>> >>> Other notes: TRIM needs to be supported on swap as well, and in my
>> >>> opinion this is just as important as it being in UFS.  I'm not sure
>> >>> how one would implement that.
>> >>
>> >>This brings up the question if a ZFS cache (where the contents do not
>> >>survive a reboot) is completely TRIMmed before used (and normally
>> >>trimmed during use)...
>> >
>> >It is not trimmed at all.
>>
>> This does not sound like the optimal solution... is there a way to
>> know the first access after boot/attach to a cache device? If yes,
>> would it be possible to TRIM the complete provider (except for some
>> static data which needs to be there) from this place? This would not
>> solve the not TRIMmed during use part, put at least a reboot/reattach
>> could provide a sane state.
>
> What would be the possible benefit?
> I mean it's just until the device is filled, which won't happen that
> regular in environments where cache devices make sense.

If a cache is not full, it is not used well (or you do not access that  
much data, but in this case you do not have to worry).

The benefit of the initial TRIM should be a faster cache-fill latency  
(if it matters or not depends upon your use-case/drive-channel-usage).

Regarding the in-use-TRIMming... I agree that it is subject to  
discussion (and the use-case), but at least it looks like a more  
correct solution. If large objects are removed from the cache,  
following cache fills could have lower write latency. Again, if this  
matters or not depends upon your use-case/drive-channel-usage.

> More interesting would be to have the cached data reboot persistent
> one day instead of TRIMing it.

I assume this would be more work than to teach it to TRIM (looking for  
low haning fruits), but in general I agree.

Bye,
Alexander.

-- 
Fools rush in -- and get the best seats.

http://www.Leidinger.net    Alexander @ Leidinger.net: PGP ID = B0063FE7
http://www.FreeBSD.org       netchild @ FreeBSD.org  : PGP ID = 72077137


More information about the freebsd-fs mailing list