Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Sep 2010 01:22:44 +0300
From:      Andriy Gapon <avg@icyb.net.ua>
To:        Ben Kelly <ben@wanderview.com>
Cc:        stable@freebsd.org, Willem Jan Withagen <wjw@digiware.nl>, fs@freebsd.org, Jeremy Chadwick <freebsd@jdc.parodius.com>
Subject:   Re: Still getting kmem exhausted panic
Message-ID:  <4CA26AB4.3050108@icyb.net.ua>
In-Reply-To: <5BD33772-C0EA-48A9-BE9A-C8FBAF0008D7@wanderview.com>
References:  <4CA1D06C.9050305@digiware.nl> <20100928115047.GA62142__15392.0458550148$1285675457$gmane$org@icarus.home.lan> <4CA1DDE9.8090107@icyb.net.ua> <20100928132355.GA63149@icarus.home.lan> <4CA1EF69.4040402@icyb.net.ua> <FE116FEC-714D-4BF5-86D8-E29BFA713C69@wanderview.com> <4CA21809.7090504@icyb.net.ua> <71D54408-4B97-4F7A-BD83-692D8D23461A@wanderview.com> <4CA22337.2010900@icyb.net.ua> <F244BA6D-3347-4D76-BAFB-D8B975783877@wanderview.com> <4CA25E92.4060904@icyb.net.ua> <5BD33772-C0EA-48A9-BE9A-C8FBAF0008D7@wanderview.com>

next in thread | previous in thread | raw e-mail | index | archive | help
on 29/09/2010 01:01 Ben Kelly said the following:
> Thanks.  Yea, there is a lot of aggressive tuning there.  In particular, the
> slow growth algorithm is somewhat dubious.  What I found, though, was that
> the fragmentation jumped whenever the arc was reduced in size, so it was an
> attempt to make the size slowly approach peak load without overshooting.
> 
> A better long term solution would probably be to enhance UMA to support
> custom slab sizes on a zone-by-zone basis.  That way all zfs/arc allocations
> can use slabs of 128k (at a memory efficiency penalty of course).  I
> prototyped this with a dumbed down block pool allocator at one point and was
> able to avoid most, if not all, of the fragmentation.  Adding the support to
> UMA seemed non-trivial, though.

BTW, have you seen my posts about UMA and ZFS on hackers@ ?
I found it advantageous to use UMA for ZFS I/O buffers, but only after reducing
size of per-CPU caches for the zones with large-sized items.
I further modified the code in my local tree to completely disable per-CPU
caches for items > 32KB.

-- 
Andriy Gapon



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4CA26AB4.3050108>