On Wed, 29 Oct 2008 14:34:53 +0100, Roman Shmelev
Hi,
Are there any thoughts if using many boost::pool objects ( from 50 to 1000 to maybe 5000 ) in my application will be efficient or not? During the "long" run my program just allocates new chunks, and the deletion of them is done in the end of the program. The reason I use boost::pool is that my simple tests showed me that boost::pool allocates memory 10x faster than standard _new_ operator.
But I'm suffering that 1000 pools will cause some kind of memory fragmentation or smth like that... so maybe it will be better to use _new_ operator? I can make some another test for multiple pools, but we know that real application will act in some other way, and I cannot make a decision.
Do you really need so many pools? As a pool simply allocates chunks of a single size you only need more than one pool if you need to allocate chunks of different size. That said you only need 5000 pools if you need to allocate 5000 chunks of different size? Boris