apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jon Travis <jtra...@covalent.net>
Subject Re: Observations on fragmentation in SMS pools
Date Sun, 08 Jul 2001 17:34:22 GMT
On Sun, Jul 08, 2001 at 10:25:17AM -0700, dean gaudet wrote:
> On Sun, 8 Jul 2001, dean gaudet wrote:
> >
> > On Sun, 8 Jul 2001, Justin Erenkrantz wrote:
> >
> > > Yup.  I've brought this up to Sander and David before, but this is how
> > > pools
> >
> > woah.  no way really?
> >
> > that's not at all how it was in 1.3 or in early 2.0 ...
> >
> > in 2.0 as of uh a year ago say, there was one free list per process,
> > and locks were used to access it.
> 
> i checked -- top of tree pools still behaves almost like 1.3.  so i'm not
> sure why you're claiming the pools would go up through the ancestors for
> an allocation.
> 
> apr_palloc first tries the simple pointer arithmetic fast path, and if
> that fails it calls new_block() which accesses the process-global
> block_freelist (from inside an alloc_mutex critical section).

There is still all this tomfoolery with locking, though, which I think
would be nice to fix with different sized buckets in the freelist.  
Stuff that the malloc in glibc does.  I cringe at the thought of how
much overhead due to abstraction this whole project is causing.

-- Jon


Mime
View raw message