|
Boost Users : |
Subject: [Boost-users] Offering a possible replacement for boost::Pool
From: Lang Stefan (SLang_at_[hidden])
Date: 2011-02-17 13:07:46
To whom it may concern...
Two years ago I was looking for an implementation of a pool allocator,
and found boost::pool. Unfortunately, the implementation was incomplete
and hadn't been maintained for years, so I decided to write my own
library, based on some of the ideas I found in the documentation for
boost::pool.
Now that I have a working library, I wondered if I should offer my
results back to the community, but I am unsure how to go about that.
What I currently have is an implementation that allocates, constructs,
deconstructs, and deallocates class type objects from pool, and
deallocates all unused blocks, all at constant time. The memory overhead
is low, and there is some potential to reduce it even further, close to
the original implementation of boost::pool. I am still missing some kind
of 'garbage collection' (i. e. pack objects spread out over several
blocks into one, so that I can release some unused blocks), and a decent
method to allocate a whole array of m elements at O(m) (can't be less
than that since I have to call constructors for each element). So this
is still a work in progress.
I've also started something resembling an article, that describes my
goals, and how I came to make certain design decisions, down to the
individual classes, structs, and their members. But I'm afraid in its
current state it's not particularly helpful.
How should I go about this - is there any place I can or should submit
my stuff to, and what parts of it (naked lib, article, test program, VS
project files)?
Regards,
Stefan
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net