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 target/67396] [4.9/5.0 regression] Performance regression compiling variadic function with many arguments


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67396

--- Comment #5 from Paul Pluzhnikov <ppluzhnikov at google dot com> ---
> please do before you report compile time regressions.

Ok. Here are the new numbers from current trunk built with
--enable-checking=release
(nothing's changed that I can see; still very slow):

for j in 500 1000 2000 3000; do perl ./gen_bz18872.pl $j > t.c ; (time
gcc-svn-r227326-rel/bin/gcc -c -O2 t.c) |& grep user; done

user    0m1.488s
user    0m12.010s
user    1m40.353s
user    5m47.668s

Here is the -ftime-report:

perl ./gen_bz18872.pl 2000 > t.c && gcc-svn-r227326-rel/bin/gcc -c -O2 t.c
-ftime-report

Execution times (seconds)
 phase setup             :   0.00 ( 0%) usr   0.00 ( 0%) sys   0.00 ( 0%) wall 
  1066 kB (19%) ggc
 phase parsing           :   0.02 ( 0%) usr   0.00 ( 0%) sys   0.02 ( 0%) wall 
  1486 kB (27%) ggc
 phase opt and generate  : 100.30 (100%) usr   0.00 ( 0%) sys 100.43 (100%)
wall    2997 kB (54%) ggc
 trivially dead code     :   0.00 ( 0%) usr   0.00 ( 0%) sys   0.01 ( 0%) wall 
     0 kB ( 0%) ggc
 df scan insns           :   0.01 ( 0%) usr   0.00 ( 0%) sys   0.00 ( 0%) wall 
     0 kB ( 0%) ggc
 preprocessing           :   0.02 ( 0%) usr   0.00 ( 0%) sys   0.01 ( 0%) wall 
   948 kB (17%) ggc
 lexical analysis        :   0.00 ( 0%) usr   0.00 ( 0%) sys   0.01 ( 0%) wall 
     0 kB ( 0%) ggc
 dead store elim1        : 100.17 (100%) usr   0.00 ( 0%) sys 100.29 (100%)
wall     171 kB ( 3%) ggc
 dead store elim2        :   0.10 ( 0%) usr   0.00 ( 0%) sys   0.10 ( 0%) wall 
   171 kB ( 3%) ggc
 scheduling 2            :   0.02 ( 0%) usr   0.00 ( 0%) sys   0.03 ( 0%) wall 
  1558 kB (28%) ggc
 TOTAL                 : 100.32             0.00           100.45              
5558 kB


perf report:

Samples: 406K of event 'cycles', Event count (approx.): 372444339282
 32.97%  cc1  cc1                [.] find_base_term(rtx_def*)
 25.58%  cc1  cc1                [.] get_addr(rtx_def*) [clone .part.33]
 17.70%  cc1  cc1                [.] rtx_equal_for_memref_p(rtx_def const*,
rtx_def const*)
 11.33%  cc1  cc1                [.] memrefs_conflict_p(int, rtx_def*, int,
rtx_def*, long) [clone .constprop.107]
  5.79%  cc1  cc1                [.] addr_side_effect_eval(rtx_def*, int, int)
[clone .constprop.108]
  2.43%  cc1  cc1                [.] cselib_sp_based_value_p(cselib_val*)
  2.34%  cc1  cc1                [.] ix86_find_base_term(rtx_def*)
  1.41%  cc1  cc1                [.] cselib_have_permanent_equivalences()
  0.14%  cc1  cc1                [.] record_store(rtx_def*, dse_bb_info_type*)


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