This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Faster compilation speed
- From: David Edelsohn <dje at watson dot ibm dot com>
- To: Richard Henderson <rth at redhat dot com>, "David S. Miller" <davem at redhat dot com>
- Cc: gcc at gcc dot gnu dot org
- Date: Wed, 14 Aug 2002 13:00:16 -0400
- Subject: Re: Faster compilation speed
>>>>> 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