This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tree-optimization/36291] GCC is slow and memory-hungry building sipQtGuipart.cpp



------- Comment #1 from rguenth at gcc dot gnu dot org  2008-05-22 12:28 -------
One slow "leaker" of memory for large TUs is the operands_bitmap_obstack from
the operand scanner.  From it the stmt annotation loaded and stored symbols
bitmaps are allocated but never freed until after the last function has gone
out of SSA.

We should consider moving these to GC memory or to add support for using alloc
pools for bitmap allocations.


Memory partitioning uses loads of bitmaps for the parent tags:
tree-ssa-alias.c:1311 (update_reference_c 5424467  433957360  433957360 
433957360   76199616


Likewise PTA still does that:
tree-ssa-structalias.c:4850 (find_what_p_  62908  555059880   42045880  
42032640      62415


Overall the variable annotations account for most of the GC memory used:
tree-ssanames.c:146 (make_ssa_name_fn)             33297312: 2.1%          0:
0.0%          0: 0.0%          0: 0.0%     346847
bitmap.c:229 (bitmap_element_allocate)            116709320: 7.4%          0:
0.0%          0: 0.0%   16672760:11.7%    2084095
ggc-common.c:179 (ggc_calloc)                     409212224:25.8%   12684056:
5.0%    1974632: 2.2%    4572784: 3.2%     194426
tree-dfa.c:153 (create_var_ann)                   482008296:30.4%          0:
0.0%          0: 0.0%   43818936:30.6%    5477367
Total                                            1586488294        255567175   
     90963544        143104669         18411405


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36291


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]