One thing I'm not sure is addressed by this design is memory locality. I know of libnuma http://linux.die.net/man/3/numa which allows me to express what NUMA domain my memory should be allocated from at run-time for each allocation.
Not being part of the interface do not mean that the allocator cannot accept parameters. Via state for instance.
