From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 7218 invoked by alias); 18 May 2003 19:22:01 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 6411 invoked from network); 18 May 2003 19:21:49 -0000 Received: from unknown (HELO mailout11.sul.t-online.com) (194.25.134.85) by sources.redhat.com with SMTP; 18 May 2003 19:21:49 -0000 Received: from fwd09.sul.t-online.de by mailout11.sul.t-online.com with smtp id 19HTjB-00033y-01; Sun, 18 May 2003 21:21:49 +0200 Received: from kolme (520028553724-0001@[80.138.187.56]) by fmrl09.sul.t-online.com with esmtp id 19HTj1-07AN28C; Sun, 18 May 2003 21:21:39 +0200 Received: from goofy.hamnixda.de ([192.168.100.249] helo=goofy) by kolme with esmtp (Exim 3.35 #1 (Debian)) id 19HTiz-0000Ta-00 for ; Sun, 18 May 2003 21:21:37 +0200 Received: from richard (helo=localhost) by goofy with local-esmtp (Exim 3.36 #1 (Debian)) id 19HTiy-0006p6-00 for ; Sun, 18 May 2003 21:21:36 +0200 Date: Sun, 18 May 2003 19:31:00 -0000 From: Richard Guenther To: gcc@gcc.gnu.org Subject: Re: Huge compile time & run time performance regression 3.3 -> HEAD In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Sender: 520028553724-0001@t-dialin.net X-SW-Source: 2003-05/txt/msg01704.txt.bz2 On Sun, 18 May 2003, Richard Guenther wrote: > On Sun, 18 May 2003, Richard Guenther wrote: > > > Hi! > > > > As 3.3 is now out, I start comparing 3.3 to HEAD wrt compile time > > performance and performance of the resulting code. As always these > > comparisons are for a POOMA based scientific application. > > > > I experience a 100% compile time regression (673.50s -> 1284.48s) and > > a 12% runtime performance regression (150s -> 171s) when comparing > > gcc3.3 to HEAD. > > > > Time reports follow, the most prominent regressions are expand, global CSE > > (>300%!), loop analysis and branch prediction. > > Top of a profile of gcc3.4 is > > Flat profile: > > Each sample counts as 0.01 seconds. > % cumulative self self total > time seconds seconds calls s/call s/call name > 7.47 79.18 79.18 906 0.09 0.09 compute_store_table > 6.92 152.54 73.36 262785751 0.00 0.00 expr_equiv_p > 6.76 224.21 71.67 170098 0.00 0.00 fixup_var_refs_insns > 5.58 283.38 59.17 12865 0.00 0.00 loop_regs_scan > 4.39 329.97 46.59 364279 0.00 0.00 compute_transp > 4.10 373.46 43.49 308470718 0.00 0.00 > splay_tree_splay_helper > 3.27 408.15 34.69 201411415 0.00 0.00 fixup_var_refs_1 > 3.02 440.22 32.07 192083288 0.00 0.00 true_dependence > 2.88 470.76 30.54 232168274 0.00 0.00 > mems_in_disjoint_alias_sets_p Compared to a 3.3 profile: Flat profile: Each sample counts as 0.01 seconds. % cumulative self self total time seconds seconds calls ms/call ms/call name 8.08 45.30 45.30 272942 0.17 0.17 compute_transp 7.15 85.38 40.08 263012170 0.00 0.00 splay_tree_splay_helper 5.62 116.92 31.54 165540544 0.00 0.00 true_dependence 4.72 143.36 26.44 203228718 0.00 0.00 mems_in_disjoint_alias_sets_p 3.80 164.68 21.32 171556 0.12 0.12 clear_table 3.61 184.92 20.24 9131 2.22 2.69 loop_regs_update 3.46 204.34 19.42 3012195 0.01 0.01 invalid_mode_change_p 3.04 221.36 17.02 605912 0.03 0.04 htab_traverse 2.65 236.24 14.88 372632 0.04 0.04 alloc_page 2.05 247.74 11.50 3644058 0.00 0.01 gt_ggc_mx_lang_tree_node 1.81 257.88 10.14 4977 2.04 2.20 unroll_loop 1.80 267.97 10.09 1344607967 0.00 0.00 splay_tree_compare_ints 1.80 278.04 10.07 105168704 0.00 0.00 htab_find_slot_with_hash 1.59 286.94 8.90 5214165 0.00 0.00 loop_invariant_p gcc3.4 > 6.92 152.54 73.36 262785751 0.00 0.00 expr_equiv_p seems to be the culprit. Full gcc3.3 profile at http://www.tat.physik.uni-tuebingen.de/~rguenth/gcc/profile_33.gz Richard.