| 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. |