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 middle-end/45422] [4.6 Regression] compile time increases 3x.


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

--- Comment #32 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-01-25 09:02:57 UTC ---
IMHO for P1 purposes we should just look at compile time regressions from 4.5
here at this point.  On the #c1 testcase I get with --enable-checking=release
current trunk and current 4.5 branch on x86_64-linux:

4.6 x86_64 -m64 -O3 -fbounds-check -ftime-report
 df live regs          :   1.87 ( 3%) usr   0.02 ( 1%) sys   1.66 ( 3%) wall   
   0 kB ( 0%) ggc
 parser                :   1.04 ( 2%) usr   0.20 ( 9%) sys   1.24 ( 2%) wall  
53425 kB ( 6%) ggc
 tree VRP              :   1.82 ( 3%) usr   0.09 ( 4%) sys   2.02 ( 3%) wall  
63870 kB ( 8%) ggc
 tree PTA              :   1.02 ( 2%) usr   0.01 ( 0%) sys   0.98 ( 2%) wall   
5498 kB ( 1%) ggc  
 tree SSA incremental  :   1.23 ( 2%) usr   0.12 ( 6%) sys   1.11 ( 2%) wall   
6733 kB ( 1%) ggc
 tree CCP              :   1.33 ( 2%) usr   0.03 ( 1%) sys   1.33 ( 2%) wall   
4989 kB ( 1%) ggc
 complete unrolling    :   1.07 ( 2%) usr   0.16 ( 8%) sys   1.28 ( 2%) wall  
88755 kB (11%) ggc
 tree iv optimization  :  10.99 (19%) usr   0.09 ( 4%) sys  11.09 (19%) wall 
138994 kB (16%) ggc  
 CSE                   :   1.28 ( 2%) usr   0.01 ( 0%) sys   1.28 ( 2%) wall   
 229 kB ( 0%) ggc
 combiner              :   2.00 ( 3%) usr   0.00 ( 0%) sys   1.95 ( 3%) wall  
31554 kB ( 4%) ggc  
 integrated RA         :   3.68 ( 6%) usr   0.01 ( 0%) sys   3.78 ( 6%) wall  
19906 kB ( 2%) ggc
 reload                :   2.04 ( 4%) usr   0.00 ( 0%) sys   2.18 ( 4%) wall   
7106 kB ( 1%) ggc
 reload CSE regs       :   2.04 ( 4%) usr   0.02 ( 1%) sys   2.01 ( 3%) wall  
12188 kB ( 1%) ggc
 scheduling 2          :   2.55 ( 4%) usr   0.01 ( 0%) sys   2.61 ( 4%) wall   
 895 kB ( 0%) ggc
 TOTAL                 :  57.47             2.11            59.60            
845009 kB

4.5 x86_64 -m64 -O3 -fbounds-check -ftime-report
 df live regs          :   1.58 ( 4%) usr   0.00 ( 0%) sys   1.39 ( 3%) wall   
   0 kB ( 0%) ggc     
 parser                :   1.02 ( 2%) usr   0.18 ( 9%) sys   1.21 ( 3%) wall  
55472 kB ( 7%) ggc     
 tree VRP              :   1.39 ( 3%) usr   0.13 ( 6%) sys   1.73 ( 4%) wall  
56478 kB ( 8%) ggc
 tree PRE              :   1.03 ( 2%) usr   0.04 ( 2%) sys   1.24 ( 3%) wall   
7286 kB ( 1%) ggc
 complete unrolling    :   1.32 ( 3%) usr   0.21 (10%) sys   1.55 ( 3%) wall  
91137 kB (12%) ggc
 tree iv optimization  :   5.45 (12%) usr   0.09 ( 4%) sys   5.43 (12%) wall  
95576 kB (13%) ggc
 expand                :   2.62 ( 6%) usr   0.16 ( 8%) sys   2.76 ( 6%) wall  
58104 kB ( 8%) ggc
 CSE                   :   1.18 ( 3%) usr   0.01 ( 0%) sys   0.94 ( 2%) wall   
 261 kB ( 0%) ggc
 combiner              :   1.53 ( 3%) usr   0.00 ( 0%) sys   1.48 ( 3%) wall  
19953 kB ( 3%) ggc
 integrated RA         :   3.21 ( 7%) usr   0.00 ( 0%) sys   3.55 ( 8%) wall  
11410 kB ( 2%) ggc
 reload                :   2.13 ( 5%) usr   0.04 ( 2%) sys   2.00 ( 4%) wall   
7273 kB ( 1%) ggc
 reload CSE regs       :   1.67 ( 4%) usr   0.01 ( 0%) sys   1.55 ( 3%) wall  
10032 kB ( 1%) ggc
 scheduling 2          :   2.65 ( 6%) usr   0.02 ( 1%) sys   2.66 ( 6%) wall   
1063 kB ( 0%) ggc
 TOTAL                 :  44.55             2.05            46.62            
747832 kB

4.6 x86_64 -m32 -O3 -fbounds-check -ftime-report
 df live regs          :   1.24 ( 2%) usr   0.02 ( 1%) sys   1.05 ( 2%) wall   
   0 kB ( 0%) ggc
 parser                :   1.05 ( 2%) usr   0.18 ( 9%) sys   1.23 ( 2%) wall  
53861 kB ( 7%) ggc
 tree VRP              :   1.48 ( 3%) usr   0.05 ( 2%) sys   1.78 ( 3%) wall  
52970 kB ( 7%) ggc
 tree iv optimization  :   9.92 (19%) usr   0.15 ( 7%) sys   9.98 (18%) wall 
125735 kB (17%) ggc
 CSE                   :   1.46 ( 3%) usr   0.00 ( 0%) sys   1.42 ( 3%) wall   
 329 kB ( 0%) ggc
 combiner              :   1.41 ( 3%) usr   0.01 ( 0%) sys   1.35 ( 2%) wall  
20981 kB ( 3%) ggc
 integrated RA         :   2.89 ( 6%) usr   0.00 ( 0%) sys   2.83 ( 5%) wall  
14083 kB ( 2%) ggc
 reload                :   2.59 ( 5%) usr   0.02 ( 1%) sys   2.58 ( 5%) wall  
18918 kB ( 3%) ggc
 reload CSE regs       :   2.62 ( 5%) usr   0.00 ( 0%) sys   2.91 ( 5%) wall  
13557 kB ( 2%) ggc
 scheduling 2          :   2.49 ( 5%) usr   0.01 ( 0%) sys   2.45 ( 5%) wall   
 953 kB ( 0%) ggc
 TOTAL                 :  52.36             2.02            54.39            
744417 kB

4.5 x86_64 -m32 -O3 -fbounds-check -ftime-report
 df live regs          :   1.41 ( 3%) usr   0.02 ( 1%) sys   1.43 ( 3%) wall   
   0 kB ( 0%) ggc
 parser                :   1.02 ( 2%) usr   0.18 ( 9%) sys   1.19 ( 2%) wall  
55913 kB ( 8%) ggc
 tree VRP              :   1.44 ( 3%) usr   0.14 ( 7%) sys   1.39 ( 3%) wall  
54451 kB ( 8%) ggc
 tree iv optimization  :   7.76 (17%) usr   0.11 ( 5%) sys   8.02 (17%) wall 
107362 kB (15%) ggc
 expand                :   2.66 ( 6%) usr   0.08 ( 4%) sys   2.73 ( 6%) wall  
56088 kB ( 8%) ggc
 CSE                   :   1.41 ( 3%) usr   0.00 ( 0%) sys   1.31 ( 3%) wall   
 480 kB ( 0%) ggc
 integrated RA         :   2.88 ( 6%) usr   0.00 ( 0%) sys   2.78 ( 6%) wall   
9890 kB ( 1%) ggc
 reload                :   2.71 ( 6%) usr   0.05 ( 2%) sys   2.68 ( 6%) wall  
20135 kB ( 3%) ggc
 reload CSE regs       :   1.98 ( 4%) usr   0.00 ( 0%) sys   2.00 ( 4%) wall  
13166 kB ( 2%) ggc
 scheduling 2          :   2.67 ( 6%) usr   0.04 ( 2%) sys   2.77 ( 6%) wall   
 840 kB ( 0%) ggc
 TOTAL                 :  46.38             2.08            48.48            
708175 kB

(listing only lines with >= 1sec times).  For x86_64 -m32 it doesn't seem to be
a big deal and even the 4.6 numbers are nowhere the claimed 3x increase, it is
a 30% slowdown and only half of the slowdown can be actually attributed to
ivopts.  On the #c5 testcase ivopts still takes > 50% of the reported time
though.  To me this sounds P2ish, but I'll let Richard chime in...


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