This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Speed/profile of gcc3.4
On Tue, 20 Jan 2004, Jan Hubicka wrote:
> > Hi!
> >
> > To give some more data to the speed of g++ discussion I built a profiling
> > compiler and ran it over the tramp3d.cpp testcase
> > (http://www.tat.physik.uni-tuebingen.de/~rguenth/gcc/tramp3d.cpp.gz). Top
> > on the (flat) profile are
> >
> > % cumulative self self total
> > time seconds seconds calls s/call s/call name
> > 7.85 24.64 24.64 71506294 0.00 0.00 ggc_alloc
> > 3.37 35.23 10.59 75978109 0.00 0.00 htab_find_slot_with_hash
> > 3.17 45.20 9.97 15526171 0.00 0.00 walk_tree
>
> Actually I did some profiling of this too and at least from Gerald's
> testcase I concluded that wast majority of the hashtable uses come from
> the for_each_template_parm. Jason mentioned that Mark plans to trim
> down use of these. That should make it possible to shot this function
> out of profiles completely.
>
> Mark, do you made some progress on this? If not, I can try to do
> something myself if you give me someguidelines.
Actually, for_each_template_param shows up here:
0.43 151.22 1.34 47911 0.00 0.00 sbitmap_vector_alloc
0.39 152.45 1.23 18536823 0.00 0.00 for_each_template_parm_r
0.39 153.67 1.22 1120852 0.00 0.00 sbitmap_union_of_diff_cg
Callgraph looks like
384854 cselib_lookup_mem <cycle 1> [407]
640103 gen_rtx_CONST_INT <cycle 1> [1087]
1855728 cgraph_node <cycle 1> [595]
3023470 cselib_lookup <cycle 1> [108]
69793938 htab_find_slot <cycle 1> [187]
0.00 0.00 2/101229133 make_cpp_dir [2759]
0.00 0.00 441/101229133 _cpp_find_file [2155]
0.00 0.00 4518/101229133 cgraph_remove_node [1459]
[41] 3.9 10.59 1.56 75978109 htab_find_slot_with_hash <cycle 1> [41]
0.65 0.00 64368978/64368978 eq_pointer [310]
0.45 0.00 1517339/1517339 reg_attrs_htab_eq [389]
0.12 0.00 462631/462631 list_hash_eq [752]
0.11 0.00 1052895/1052895 mem_attrs_htab_eq [780]
0.10 0.01 227704/661135 type_hash_eq [480]
0.07 0.00 1698056/1698056 size_htab_eq [927]
and for htab_find_slot
940124 get_mem_attrs <cycle 1> [866]
1096723 get_reg_attrs <cycle 1> [657]
1684632 size_int_type_wide <cycle 1> [549]
65661439 walk_tree <cycle 1> [23]
0.05 0.04 58629/101229133 remove_eh_handler [721]
0.09 0.06 104145/101229133 add_ehl_entry [590]
0.17 0.12 200965/101229133 maybe_remove_eh_handler [397]
[187] 0.5 0.88 0.57 69793938 htab_find_slot <cycle 1> [187]
0.36 0.00 65692767/114308909 hash_pointer [318]
0.06 0.00 940124/1008688 mem_attrs_htab_hash [985]
0.05 0.00 1096723/1407744 reg_attrs_htab_hash [929]
0.04 0.00 5783/5783 const_hash_1 [1123]
0.02 0.01 1684632/1685231 size_htab_hash [1284]
0.02 0.00 363739/366283 ehl_hash [1404]
0.01 0.00 3599/3599 const_double_htab_hash [1755]
0.00 0.00 6571/12650 typename_hash [2424]
0.00 0.00 31328/764758 insns_for_mem_hash [2973]
0.00 0.00 5783/5783 const_desc_hash [3332]
69793938 htab_find_slot_with_hash <cycle 1> [41]
and walk_tree
100948352 walk_tree <cycle 1> [23]
732 break_out_target_exprs <cycle 1> [2322]
137222 cxx_unsave_expr_now <cycle 1> [798]
193876 copy_body <cycle 1> [1409]
197273 cgraph_create_edges <cycle 1> [1072]
238457 record_call_1 <cycle 1> [429]
377772 expand_calls_inline <cycle 1> [2988]
472630 remap_decl <cycle 1> [379]
536279 expand_call_inline <cycle 1> [132]
765817 walk_tree_without_duplicates <cycle 1> [646]
1337259 cp_walk_subtrees <cycle 1> [221]
11268854 for_each_template_parm <cycle 1> [333]
[23] 5.8 9.97 8.22 15526171+100948352 walk_tree <cycle 1> [23]
0.31 6.75 15566125/15566125 cp_unsave_r [61]
0.53 0.00 48523627/50649982 first_rtl_op [352]
0.22 0.05 2107198/2107198 no_linkage_helper [524]
0.03 0.10 951599/951599 inline_forbidden_p_1 [709]
0.10 0.01 1625951/1625951 calls_setjmp_r [773]
0.05 0.00 5275403/30960015 cp_is_overload_p [478]
0.03 0.00 593303/593303 c_estimate_num_insns_1 [1203]
0.03 0.00 3316016/3316016 cxx_callgraph_analyze_expr [1225]
0.01 0.00 110823/110823 find_reachable_label_1 [1700]
0.00 0.00 671/26098412 copy_tree_r [45]
0.00 0.00 7357/7357 bot_replace [2470]
0.00 0.00 2424/2424 local_variable_p_walkfn [2528]
0.00 0.00 9990/9990 nullify_returns_r [3277]
65661439 htab_find_slot <cycle 1> [187]
51607162 cp_walk_subtrees <cycle 1> [221]
26625551 mark_local_for_remap_r <cycle 1> [195]
18536823 for_each_template_parm_r <cycle 1> [210]
--
Richard Guenther <richard dot guenther at uni-tuebingen dot de>
WWW: http://www.tat.physik.uni-tuebingen.de/~rguenth/