On Thu, Jan 21, 2010 at 11:13 PM, Gustavo Sverzut Barbieri
<barbi...@profusion.mobi> wrote:
> I'm doing ebuilds for gentoo and I want to make them use configurable
> mempools, however the names are stupidly bad and I have no idea the
> use so I enable or disable them.
>
> could someone (ie: cedric) document what are these, how they are
> chosen, which should be really enabled and which could be left out
> since are experiments?

So we have :
 * buddy: Last one, from turran, I will let him describe this one.

 * chained_pool: The default one, basically do big malloc and split
the result in chunk of the required size that are pushed inside a
stack. Then when requested it take this pointer from the stack to give
them to whoever whant them.

 * ememoa_fixed and ememoa_unknown: Are experimental allocator, could
be usefull when you have a fixed amount of memory.

 * fixed_bitmap: This one, malloc 32 * the required size and push the
pool pointer in a rbtree. To find empty space in a pool, it will just
search for the first bit set in a int (32bits). And when a pointer is
freed, it will do a search inside the rbtree.

 * pass_through: This one just call malloc and free. It may be faster
on some computer than using our own allocator (typical case when you
have huge L2 cache, over 4MB).

Yeah, I know, better docs required and perhaps add some benchmark result too.
-- 
Cedric BAIL

------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to