Locality problems caused by size based allocation?
Zack Weinberg
zack@codesourcery.com
Tue Dec 17 20:03:00 GMT 2002
Daniel Berlin <dberlin@dberlin.org> writes:
> On Tue, 17 Dec 2002, Jeff Sturm wrote:
>> What exactly is "size based allocation"?
> What ggc-page does, which is segregate objects based on size rather than
> age or object type.
>
> This doesn't work well for RTL, for instance, where you have 3 (or was it
> 2 or 4, i forget which) sizes of RTL, so size allocation guarantees that
> in a linear walk of RTL, you'll end up moving across all different
> random pages.
FYI, I plan to address this particular issue after the New Year, by
picking up Dave Miller's suggestion from awhile back to avoid ever
allocating long-lived RTL, and then reverting RTL to obstacks -- but
just one obstack, data on which lives only during calls to expand_body
(or something like that).
zw
More information about the Gcc
mailing list