This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Faster compilation speed: cache behavior
- From: Neil Booth <neil at daikokuya dot co dot uk>
- To: Matt Austern <austern at apple dot com>
- Cc: gcc at gcc dot gnu dot org
- Date: Tue, 20 Aug 2002 23:21:43 +0100
- Subject: Re: Faster compilation speed: cache behavior
- References: <4E563BE6-B483-11D6-95E6-000393B2ABA2@apple.com>
Matt Austern wrote:-
> As these numbers suggest, using cc1plus takes much longer than
> using cc1.
>
> The fact that list_length and ht_lookup and cp_tree_node_structure
> are so high suggests that we've got poor locality in tree node
> allocation. The fact that cp_tree_node_structure is so high
> suggests that we're probably getting a lot of cache misses
> during garbage collection.
ht_lookup will be fixed when identifiers stop being trees. Being
a tree means a lot of unnecessary baggage in the struct, and
unpredictable allocation like you say.
However, making identifiers not be trees requires de-obfuscation
of various derived tree structures, which I don't hold out much
hope for in the near term...
Neil.