Date: Sat, 02 Feb 2008 21:56:42 +0200 From: Alexander Motin <mav@FreeBSD.org> To: Peter Jeremy <peterjeremy@optushome.com.au> Cc: freebsd-hackers@freebsd.org, freebsd-performance@freebsd.org Subject: Re: Memory allocation performance Message-ID: <47A4CAFA.5040708@FreeBSD.org> In-Reply-To: <20080202193656.GR35170@server.vk2pj.dyndns.org> References: <47A25412.3010301@FreeBSD.org> <47A25A0D.2080508@elischer.org> <47A2C2A2.5040109@FreeBSD.org> <20080201185435.X88034@fledge.watson.org> <47A43873.40801@FreeBSD.org> <20080202193656.GR35170@server.vk2pj.dyndns.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Peter Jeremy пишет: > On Sat, Feb 02, 2008 at 11:31:31AM +0200, Alexander Motin wrote: >> To check UMA dependency I have made a trivial one-element cache which in my >> test case allows to avoid two for four allocations per packet. > > You should be able to implement this lockless using atomic(9). I haven't > verified it, but the following should work. I have tried this, but man 9 atomic talks: The atomic_readandclear() functions are not implemented for the types ``char'', ``short'', ``ptr'', ``8'', and ``16'' and do not have any variants with memory barriers at this time. -- Alexander Motin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?47A4CAFA.5040708>