Title | amcReclaimNailed creates too many padding objects |
Status | closed |
Priority | nice |
Assigned user | Gareth Rees |
Organization | Ravenbrook |
Description | In amcReclaimNailed [1], every dead object is replaced with a padding object (even if it is already a forwarding or padding object). This seems wasteful. |
Analysis | Object formats have no "ispad" method, so this is necessary: we can't distinguish a dead object from a padding object. In any case, creating a padding object is likely to be cheap. However, there is an opportunity for coalescing a run of adjacent dead objects into a single padding object and so speeding up future traversals of this segment. |
How found | inspection |
Evidence | [1] <https://info.ravenbrook.com/project/mps/master/code/poolamc.c#line-2002 > |
Created by | Gareth Rees |
Created on | 2014-07-03 12:20:32 |
Last modified by | Gareth Rees |
Last modified on | 2014-07-03 20:56:18 |
History | 2014-07-03 GDR Created. |
Change | Effect | Date | User | Description |
---|---|---|---|---|
186812 | closed | 2014-07-03 20:56:18 | Gareth Rees | Instead of creating one padding object for each reclaimed object in a nailed AMC segment, create a padding object for each contiguous run of reclaimed objects, speeding up any future traversals of the segment. |