MPS issue job001687

TitleAWL does not recycle memory to the arena.
Statusclosed
Priorityoptional
Assigned userGareth Rees
OrganizationRavenbrook
DescriptionAWL does not recycle memory to the arena.

An AWL pool will recycle memory but it only makes that memory available to the same pool. What it should do is return any memory that it can to the arena so that it can be reused by any pool.
AnalysisThis is a kind of deliberate feature of the design. Doesn't mean it's a good thing though.

Currently AWL doesn't easily know when a segment is entirely free and can therefore be returned to the arena, though I see no particular reason why AWLReclaim couldn't do this.
How foundinspection
Evidence[1] http://www.ravenbrook.com/project/mps/master/code/poolawl.c
Observed in1.108.0
Created byDavid Jones
Created on2007-07-19 16:58:39
Last modified byGareth Rees
Last modified on2014-04-30 16:34:40
History2007-07-19 DRJ Created.
2013-03-19 GDR Assigned to RB.
2013-06-16 RB Downgraded to "optional" as this isn't affecting anyone (see job003499).

Fixes

Change Effect Date User Description
185906 closed 2014-04-30 16:34:40 Gareth Rees AWL now returns segments to the arena when they are free.