This is the mail archive of the gcc-regression@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]

GCC memory consumption increased by recent patch!


Hi,
Comparing memory consumption on compilation of combine.i and generate-3.4.ii I got:


comparing combine.c compilation at -O0 level:
    Overall memory needed: 24369k
    Peak memory use before GGC: 9063k
    Peak memory use after GGC: 8377k
    Maximum of released memory in single GGC run: 2864k
    Garbage: 41736k
    Leak: 5863k
    Overhead: 5545k
    GGC runs: 352

comparing combine.c compilation at -O1 level:
    Overall memory needed: 25341k -> 25345k
    Peak memory use before GGC: 8954k
    Peak memory use after GGC: 8450k
    Maximum of released memory in single GGC run: 2027k -> 2025k
    Garbage: 67054k -> 67051k
    Leak: 6258k -> 6258k
    Overhead: 10335k -> 10335k
    GGC runs: 544

comparing combine.c compilation at -O2 level:
    Overall memory needed: 28829k -> 28825k
    Peak memory use before GGC: 12383k
    Peak memory use after GGC: 12257k
    Maximum of released memory in single GGC run: 2532k -> 2533k
    Garbage: 80994k -> 80978k
    Leak: 6082k -> 6082k
    Overhead: 14149k -> 14148k
    GGC runs: 547

comparing combine.c compilation at -O3 level:
  Overall memory allocated via mmap and sbrk increased from 31237k to 31301k, overall 0.20%
    Overall memory needed: 31237k -> 31301k
    Peak memory use before GGC: 12657k
    Peak memory use after GGC: 12257k
    Maximum of released memory in single GGC run: 3350k -> 3348k
    Garbage: 109638k -> 109624k
    Leak: 6605k -> 6604k
    Overhead: 19051k -> 19019k
    GGC runs: 614

comparing insn-attrtab.c compilation at -O0 level:
    Overall memory needed: 117268k
    Peak memory use before GGC: 77779k
    Peak memory use after GGC: 45259k
    Maximum of released memory in single GGC run: 42606k
    Garbage: 159302k
    Leak: 10433k
    Overhead: 20572k
    GGC runs: 294

comparing insn-attrtab.c compilation at -O1 level:
    Overall memory needed: 128504k
    Peak memory use before GGC: 83296k
    Peak memory use after GGC: 69015k
    Maximum of released memory in single GGC run: 40616k
    Garbage: 441512k -> 441503k
    Leak: 10779k -> 10779k
    Overhead: 77180k -> 77179k
    GGC runs: 430

comparing insn-attrtab.c compilation at -O2 level:
    Overall memory needed: 153120k
    Peak memory use before GGC: 99056k
    Peak memory use after GGC: 84176k
    Maximum of released memory in single GGC run: 41527k
    Garbage: 488031k
    Leak: 10703k
    Overhead: 85275k
    GGC runs: 363

comparing insn-attrtab.c compilation at -O3 level:
    Overall memory needed: 153132k
    Peak memory use before GGC: 99057k
    Peak memory use after GGC: 84178k
    Maximum of released memory in single GGC run: 41526k
    Garbage: 489303k
    Leak: 10745k
    Overhead: 85439k
    GGC runs: 373

comparing Gerald's testcase PR8361 compilation at -O0 level:
    Overall memory needed: 110628k
    Peak memory use before GGC: 86785k
    Peak memory use after GGC: 85475k
    Maximum of released memory in single GGC run: 19468k
    Garbage: 243038k
    Leak: 54798k
    Overhead: 42337k
    GGC runs: 365

comparing Gerald's testcase PR8361 compilation at -O1 level:
    Overall memory needed: 103681k
    Peak memory use before GGC: 85648k
    Peak memory use after GGC: 84682k
    Maximum of released memory in single GGC run: 18913k
    Garbage: 474096k -> 474067k
    Leak: 56726k -> 56726k
    Overhead: 67451k -> 67428k
    GGC runs: 559

comparing Gerald's testcase PR8361 compilation at -O2 level:
    Overall memory needed: 103741k -> 103737k
    Peak memory use before GGC: 85649k
    Peak memory use after GGC: 84682k
    Maximum of released memory in single GGC run: 18914k
    Garbage: 508793k -> 508613k
    Leak: 57307k -> 57306k
    Overhead: 76955k -> 76951k
    GGC runs: 605

comparing Gerald's testcase PR8361 compilation at -O3 level:
    Overall memory needed: 111425k -> 111429k
    Peak memory use before GGC: 92444k
    Peak memory use after GGC: 85893k
    Maximum of released memory in single GGC run: 19736k
    Garbage: 530674k -> 530443k
    Leak: 57628k -> 57641k
    Overhead: 78795k -> 78803k
    GGC runs: 585 -> 586

Head of changelog is:

--- /usr/src/SpecTests/sandbox-britten-memory/x86_64/mem-result/ChangeLog	2004-12-25 14:11:43.000000000 +0000
+++ /usr/src/SpecTests/sandbox-britten-memory/gcc/gcc/ChangeLog	2004-12-25 23:15:48.000000000 +0000
@@ -1,3 +1,19 @@
+2004-12-25  Zdenek Dvorak  <dvorakz@suse.cz>
+
+	PR rtl-optimization/19078
+	* tree-ssa-loop-ivopts.c (determine_use_iv_cost_generic,
+	determine_use_iv_cost_outer): Fix computing of cost for the original
+	bivs.
+	(dump_use): Handle case related_cands == NULL.
+
+2004-12-25  Marek Michalkiewicz  <marekm@amelek.gda.pl>
+
+	PR target/19059
+	* config/avr/avr.c (avr_mcu_types): Move attiny{13,2313} from avr4
+	to avr2.
+	* config/avr/avr.h (LINK_SPEC): Ditto.
+	* config/avr/t-avr (MULTILIB_MATCHES): Ditto.
+
 2004-12-25  Alan Modra  <amodra@bigpond.net.au>
 
 	PR target/19137

I am friendly script caring about memory consumption in GCC.  Please contact
jh@suse.cz if something is going wrong.

The results can be reproduced by building compiler with
--enable-gather-detailed-mem-stats targetting x86-64 and compiling preprocessed
combine.c or testcase from PR8632 with:

-fmem-report --param=ggc-min-heapsize=1024 --param=ggc-min-expand=1 -Ox -Q

The memory consumption summary appears in the dump after detailed listing of
the places they are allocated in.  Peak memory consumption is actually computed
by looking for maximal value in {GC XXXX -> YYYY} report.

Yours testing script.


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