[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2015-03-12 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #29 from Richard Biener rguenth at gcc dot gnu.org --- Sth like @@ -672,8 +650,18 @@ cleanup_tree_cfg_bb (basic_block bb) if (single_succ_p (bb) can_merge_blocks_p (bb, single_succ (bb))) { - merge_blocks (bb,

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2015-03-10 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #23 from Richard Biener rguenth at gcc dot gnu.org --- Funnily apart from the IPA inline summary updating issue the next important time-hog is basic-block splitting we do for inlining a call. This is because split_block moves the

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2015-03-10 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #22 from Richard Biener rguenth at gcc dot gnu.org --- I wonder why we have split_bb_on_noreturn_calls in cfg-cleanup rather than in fixup_cfg. It's quite expensive, walking all stmts and calling gimple_call_noreturn_p which is very

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2015-03-10 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #24 from Richard Biener rguenth at gcc dot gnu.org --- So in gimple_expand_calls_inline we could look only at BBs last stmt for the actual inlining but for the rest just do the basic-block splitting. And then perform that walk

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2015-03-10 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #26 from Richard Biener rguenth at gcc dot gnu.org --- Author: rguenth Date: Tue Mar 10 12:44:01 2015 New Revision: 221321 URL: https://gcc.gnu.org/viewcvs?rev=221321root=gccview=rev Log: 2015-03-09 Richard Biener rguent...@suse.de

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2015-03-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 Jakub Jelinek jakub at gcc dot gnu.org changed: What|Removed |Added CC||jakub at gcc dot

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2015-03-10 Thread rguenther at suse dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #27 from rguenther at suse dot de rguenther at suse dot de --- On Tue, 10 Mar 2015, jakub at gcc dot gnu.org wrote: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 Jakub Jelinek jakub at gcc dot gnu.org changed:

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2015-03-10 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #28 from Richard Biener rguenth at gcc dot gnu.org --- (In reply to rguent...@suse.de from comment #27) On Tue, 10 Mar 2015, jakub at gcc dot gnu.org wrote: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 Jakub Jelinek

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2015-03-10 Thread rguenther at suse dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #21 from rguenther at suse dot de rguenther at suse dot de --- On Tue, 10 Mar 2015, hubicka at ucw dot cz wrote: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #19 from Jan Hubicka hubicka at ucw dot cz --- Hmm,

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2015-03-10 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #20 from Richard Biener rguenth at gcc dot gnu.org --- Author: rguenth Date: Tue Mar 10 08:25:31 2015 New Revision: 221308 URL: https://gcc.gnu.org/viewcvs?rev=221308root=gccview=rev Log: 2015-03-10 Richard Biener rguent...@suse.de

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2015-03-09 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #16 from Richard Biener rguenth at gcc dot gnu.org --- callgrind shows the cgraph_edge_hasher quite high in the profile (via redirect_all_calls). I suppose as the large main is a single BB walking all stmts over-and-over is quite

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2015-03-09 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #18 from Richard Biener rguenth at gcc dot gnu.org --- (In reply to Richard Biener from comment #17) (In reply to Richard Biener from comment #16) callgrind shows the cgraph_edge_hasher quite high in the profile (via

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2015-03-09 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #17 from Richard Biener rguenth at gcc dot gnu.org --- (In reply to Richard Biener from comment #16) callgrind shows the cgraph_edge_hasher quite high in the profile (via redirect_all_calls). I suppose as the large main is a single

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2015-03-09 Thread hubicka at ucw dot cz
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #19 from Jan Hubicka hubicka at ucw dot cz --- Hmm, it is definitely wasteful to call the call stmt redirection so many times - it only needs to be called once per statement. We probably could call it only on newly introduced BBs, I

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2015-03-09 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added CC||rguenth at

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2015-03-06 Thread hubicka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #14 from Jan Hubicka hubicka at gcc dot gnu.org --- Yeah, this is the old problem that after each inline we recompute the size of the whole function inlined into. This means walking the whole inline tree and sum size of all

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2015-03-06 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #13 from Richard Biener rguenth at gcc dot gnu.org --- GCC 5 needs 31s and a peak of 2GB at -O0: integrated RA : 5.91 (19%) usr 0.69 (11%) sys 6.41 (17%) wall 1615872 kB (55%) ggc LRA non-specific: 2.41 (

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2010-12-16 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #12 from Jan Hubicka hubicka at gcc dot gnu.org 2010-12-17 00:08:07 UTC --- Author: hubicka Date: Fri Dec 17 00:08:02 2010 New Revision: 167964 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=167964 Log: PR middle-end/44563

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2010-12-13 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #11 from Jan Hubicka hubicka at gcc dot gnu.org 2010-12-13 13:22:28 UTC --- Patched compiler at -O2 now shows: integration : 166.20 (16%) usr 0.19 ( 1%) sys 166.86 (15%) wall 92691 kB ( 4%) ggc tree CCP :

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2010-12-12 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #5 from Jan Hubicka hubicka at gcc dot gnu.org 2010-12-12 23:55:24 UTC --- With -O2 during early optimization we get to 68% in cgraph_check_inline_limits. This is weird since early inliner should not be terribly sensitive to this. I

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2010-12-12 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 Jan Hubicka hubicka at gcc dot gnu.org changed: What|Removed |Added CC||dnovillo at

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2010-12-12 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #7 from Jan Hubicka hubicka at gcc dot gnu.org 2010-12-13 00:59:53 UTC --- ... actually split_bb does not use gsi_for_stmt since it has to walk all the statements in the BB anyway. It seems that it is one of routines updating callers

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2010-12-12 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #8 from Jan Hubicka hubicka at gcc dot gnu.org 2010-12-13 01:07:33 UTC --- My profile was at -O2. Concerning Jakub's callgrind, the -O0 compilation finishes in about 44s for me. Profile is: 4349 3.8607 libc-2.11.1.so

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2010-12-12 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 Jan Hubicka hubicka at gcc dot gnu.org changed: What|Removed |Added CC||vmakarov at

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2010-12-12 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44563 --- Comment #10 from Jan Hubicka hubicka at gcc dot gnu.org 2010-12-13 01:46:39 UTC --- Created attachment 22730 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=22730 Fix for inline cost problem The attached patch fixes the inliner cost

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2010-06-17 Thread rguenth at gcc dot gnu dot org
--- Comment #2 from rguenth at gcc dot gnu dot org 2010-06-17 10:36 --- The issue is not so much the number of functions but the number of calls in main (and thus its size). With GCC 4.3.4 I see parser: 6.87 (12%) usr 0.79 (14%) sys 8.14 (13%) wall 266316 kB

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2010-06-17 Thread rguenth at gcc dot gnu dot org
--- Comment #3 from rguenth at gcc dot gnu dot org 2010-06-17 10:44 --- Growth in time and memory is linear in the number of functions for me (GCC 4.5). rguent...@murzim:/tmp ~/bin/maxmem2.sh /usr/bin/time gcc-4.5 -S gcc_16kgen1.c -o /dev/null 14.60user 0.61system 0:15.42elapsed 98%CPU

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2010-06-17 Thread jakub at gcc dot gnu dot org
--- Comment #4 from jakub at gcc dot gnu dot org 2010-06-17 12:28 --- Created an attachment (id=20932) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20932action=view) callgrind.out.bz2 Seems it is mainly df and RA that eats the time for -O0 -g0. --

[Bug tree-optimization/44563] GCC uses a lot of RAM when compiling a large numbers of functions

2010-06-16 Thread jvoss at altsci dot com
--- Comment #1 from jvoss at altsci dot com 2010-06-17 04:14 --- Created an attachment (id=20931) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20931action=view) A c file that generates a c file that is the test case. gcc -o gcc_64kgen1 gcc_64kgen1.c -Wall ./gcc_64kgen1