This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug lto/45375] [meta-bug] Issues with building Mozilla with LTO
- From: "hubicka at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 02 Aug 2013 14:18:50 +0000
- Subject: [Bug lto/45375] [meta-bug] Issues with building Mozilla with LTO
- Auto-submitted: auto-generated
- References: <bug-45375-4 at http dot gcc dot gnu dot org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45375
--- Comment #185 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
I merged in some patches intended to reduce memory of Firefox LTO and also
updated firefox tree. Some more involved patches are on the way, so it is
summary where we stand now.
WPA usage in TOP is 10GB now.
1) After streaming in trees, the GGC usage is now 5.1GB
- 2.5GB are trees,
- 1GB are linemaps
- 0.8GB are decl maps (decl states)
tree_list 12561507
integer_type 1511296
pointer_type 4610735
record_type 8139077
method_type 2401664
integer_cst 6677946
string_cst 2127890
function_decl 6069299
label_decl 504859
field_decl 5104957
var_decl 596020
const_decl 5401253
parm_decl 9002744
type_decl 10150100
result_decl 2181250
addr_expr 4173661
tree_binfo 4780477
I have cache that cuts down the linemaps + patch to not stream PARM_DECLs and
RETURN_DECLs. With this the usage goes bellow 3GB.
2) Cgraph streaming now becomes important factor.
GGC usage goes up to 7.7GB
GGC use:
- cgraph nodes themselves are 1.5GB
- inline summaries are 0.5GB
- cgraph edges are 3.7GB
- IPA references 2.3GB
- IPA-prop 0.7GB
Off GGC
- IPA-prop 0.6GB
- Inline summary 0.5GB
- symtab encoder 0.17GB
Here one can easily
- compress the vectors recording definitions
- pull off parts of cgraph nodes that are not really needed by WPA (nested
info, etc.)
- perhaps implement of streaming of merged cgraph.
so good news is that we now have a lot of interesting low hanging fruit. Bad
news is that tree streaming still feels slow. I suppose we need to dig more
into what trees really need to go into WPA...