On Monday, January 19, 2004, at 07:58 , [EMAIL PROTECTED] wrote:

Is there any likelyhood that memory allocation will be hidden behind macros at two levels:
- ALLOCPOOL() for allocating large chunks of memory (ppols) that are
later sub-allocated (and managed) by:


- SUBALLOC() for sub allocating within a pool

Are you wanting something akin to Apache 2 pools, which are hierarchical and designed to reduce path length when freeing blocks of objects? For instance, all objects and sub-pools allocated during an HTTP request cycle can be deallocated just by free()'ing the top-level request pool.


I don't think parrot could make use of that model, since it can't very well guarantee that the user cannot retain references past the lifetime of the pool. Apache trusts modules not to make such errors; parrot can't trust the byte-code it's executing any further than it can throw it. A generational collector is a more likely means by which parrot might reduce memory-related overhead.



Gordon Henriksen
[EMAIL PROTECTED]



Reply via email to