Faster compilation speed
David Edelsohn
dje@watson.ibm.com
Wed Aug 14 10:00:00 GMT 2002
>>>>> Richard Henderson writes:
Richard> You havn't shown (or even provided guesstemates) how much temporal
Richard> or spacial locallity could be had by moving away from GC. Exactly
Richard> how much garbage is created during compilation of a function, Dave?
Richard> Suppose we did do manual memory allocation and never created any
Richard> garbage whatsoever. Suppose perfect temporal locality. How much
Richard> spacial locality do we have, considering the pointer-chasing structure
Richard> of our IL? My guess is not much.
Places where GCC could benefit from spacial locality is by
allocating the instruction list and pseudo registers from a large, static
virtual memory array instead of allocating individual objects dynamically.
I am *not* suggesting removing the linked list pointers or the pointers to
the actual RTL. GCC often scans or walks through the instructions
linearly. Pseudo registers are allocated consecutively. Allocating those
linearly-accessed objects in contiguous memory would improve cache
locality.
David
More information about the Gcc
mailing list