Boost logo

Boost :

From: (noreply_at_[hidden])
Date: 2004-07-21 09:28:24

Bugs item #995270, was opened at 2004-07-21 07:28
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting:

Category: None
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: Nobody/Anonymous (nobody)
Assigned to: Nobody/Anonymous (nobody)
Summary: perfomance: memory cleanup for pool takes too long

Initial Comment:

In my project I use boost::pool because I have to
instantiate millions of object at the beginning of the
application, and only get rid of the at termination time.

I noticed that when processing large data
(which may require 1Gb memory for the application while
it is running)
the application may finish its processing approx after 10
the cleanup part (which consists only of calling the pool
release methods on allocated objects)
on the other hand, takes many minutes
(I usually give up after 5 minutes)

debugging the code i noticed that the while loop in
the nextof function

takes many iterations.
this leads me to the belief that the reason the cleanup
takes too long is because trying to cleanup 1GB memory
of million of objects at once causes
pool to retain all its chunks in the hope of more
allocations in the future
which in turns causes it to waste all computation on
running to the end of (endless) lists in the nextof

I will appreciate a suggestion on how to fix this
until a more permanent solution is applied to the pool



You can respond by visiting:

This SF.Net email is sponsored by BEA Weblogic Workshop
FREE Java Enterprise J2EE developer tools!
Get your free copy of BEA WebLogic Workshop 8.1 today.
Boost-bugs mailing list

Boost list run by bdawes at, gregod at, cpdaniel at, john at