This is the mail archive of the
gcc-regression@gcc.gnu.org
mailing list for the GCC project.
GCC memory consumption increased by recent patch!
- From: gcctest at suse dot de
- To: jh at suse dot cz, gcc-regression at gcc dot gnu dot org
- Date: Sat, 19 Feb 2005 04:03:02 +0000
- Subject: 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: 24673k -> 24669k
Peak memory use before GGC: 9358k
Peak memory use after GGC: 8673k
Maximum of released memory in single GGC run: 2867k -> 2863k
Garbage: 41763k -> 41664k
Leak: 6395k
Overhead: 5773k -> 5773k
GGC runs: 327
comparing combine.c compilation at -O1 level:
Overall memory needed: 25513k -> 25521k
Peak memory use before GGC: 9237k -> 9235k
Peak memory use after GGC: 8740k
Maximum of released memory in single GGC run: 2026k
Garbage: 60629k -> 60532k
Leak: 6756k
Overhead: 9937k -> 9936k
GGC runs: 501 -> 500
comparing combine.c compilation at -O2 level:
Overall memory needed: 29157k -> 29161k
Peak memory use before GGC: 12670k
Peak memory use after GGC: 12544k
Maximum of released memory in single GGC run: 2597k
Garbage: 78576k -> 78473k
Leak: 6593k
Overhead: 13978k -> 13978k
GGC runs: 510
comparing combine.c compilation at -O3 level:
Overall memory needed: 31593k -> 31517k
Peak memory use before GGC: 12773k
Peak memory use after GGC: 12544k
Maximum of released memory in single GGC run: 3434k
Garbage: 105895k -> 105793k
Leak: 7120k
Overhead: 18743k -> 18743k
GGC runs: 577
comparing insn-attrtab.c compilation at -O0 level:
Overall memory needed: 114136k
Peak memory use before GGC: 75034k -> 74747k
Peak memory use after GGC: 45493k
Maximum of released memory in single GGC run: 39627k -> 39340k
Garbage: 153279k -> 152668k
Leak: 10984k
Overhead: 19970k -> 19970k
GGC runs: 273 -> 274
comparing insn-attrtab.c compilation at -O1 level:
Overall memory needed: 124568k -> 123624k
Peak memory use before GGC: 78747k
Peak memory use after GGC: 70087k
Maximum of released memory in single GGC run: 40787k -> 40781k
Garbage: 370669k -> 370048k
Leak: 11361k
Overhead: 69439k -> 69439k
GGC runs: 398
comparing insn-attrtab.c compilation at -O2 level:
Overall memory allocated via mmap and sbrk increased from 138092k to 147756k, overall 7.00%
Overall memory needed: 138092k -> 147756k
Peak memory use before GGC: 97758k
Peak memory use after GGC: 83478k
Maximum of released memory in single GGC run: 39384k
Garbage: 484557k -> 483932k
Leak: 11242k
Overhead: 84528k -> 84528k
GGC runs: 342
comparing insn-attrtab.c compilation at -O3 level:
Overall memory needed: 147800k -> 147792k
Peak memory use before GGC: 97759k
Peak memory use after GGC: 83480k
Maximum of released memory in single GGC run: 39384k
Garbage: 485374k -> 484744k
Leak: 11279k
Overhead: 84658k -> 84658k
GGC runs: 348
comparing Gerald's testcase PR8361 compilation at -O0 level:
Overall memory needed: 111028k -> 111056k
Peak memory use before GGC: 87201k -> 87156k
Peak memory use after GGC: 85872k -> 85895k
Maximum of released memory in single GGC run: 19555k -> 19511k
Garbage: 246842k -> 246091k
Leak: 55524k -> 55523k
Overhead: 43327k -> 43325k
GGC runs: 367 -> 366
comparing Gerald's testcase PR8361 compilation at -O1 level:
Overall memory needed: 103857k -> 103909k
Peak memory use before GGC: 86089k -> 86014k
Peak memory use after GGC: 85053k -> 85113k
Maximum of released memory in single GGC run: 19025k -> 18951k
Garbage: 436718k -> 435976k
Leak: 56858k -> 56857k
Overhead: 65094k -> 65092k
GGC runs: 513
comparing Gerald's testcase PR8361 compilation at -O2 level:
Overall memory needed: 104097k -> 104149k
Peak memory use before GGC: 86090k -> 86014k
Peak memory use after GGC: 85053k -> 85114k
Maximum of released memory in single GGC run: 19026k -> 18951k
Garbage: 479929k -> 479179k
Leak: 57425k -> 57424k
Overhead: 74695k -> 74697k
GGC runs: 572 -> 573
comparing Gerald's testcase PR8361 compilation at -O3 level:
Peak amount of GGC memory still allocated after garbage collectin increased from 85984k to 86193k, overall 0.24%
Overall memory needed: 105129k -> 105205k
Peak memory use before GGC: 87329k -> 87150k
Peak memory use after GGC: 85984k -> 86193k
Maximum of released memory in single GGC run: 19578k -> 19400k
Garbage: 484757k -> 483964k
Leak: 57588k -> 57595k
Overhead: 75320k -> 75318k
GGC runs: 560
Head of changelog is:
--- /usr/src/SpecTests/sandbox-britten-memory/x86_64/mem-result/ChangeLog 2005-02-18 17:59:55.000000000 +0000
+++ /usr/src/SpecTests/sandbox-britten-memory/gcc/gcc/ChangeLog 2005-02-19 03:04:33.000000000 +0000
@@ -1,3 +1,61 @@
+2005-02-18 James A. Morrison <phython@gcc.gnu.org>
+
+ * tree-ssa-ccp.c (widen_bitfield): Pass type to build_int_cst and don't
+ call fold_convert.
+
+2005-02-18 James E. Wilson <wilson@specifixinc.com>
+
+ * doc/invoke.texi (IA-64 Options): Delete -mb-step.
+ * config/ia64/ia64.c (last_group, group_idx): Delete variables.
+ (errata_find_address_regs, errata_emit_nops, fixup_errata): Delete
+ functions.
+ (ia64_reorg): Delete fixup_errata call.
+ * config/ia64/ia64.h (MASK_B_STEP, TARGET_B_STEP): Delete.
+ (TARGET_SWITCHES): Delete -mb-step entry.
+
+2005-02-19 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/20043
+ * c-typeck.c (composite_type): Handle quals in transparent unions.
+ (type_lists_compatible_p): Likewise.
+
+2005-02-18 Stan Shebs <shebs@apple.com>
+
+ * config/darwin.c (machopic_select_rtx_section): Don't put relocatable
+ expressions in the .literal8 section.
+
+2005-02-18 Geoffrey Keating <geoffk@apple.com>
+
+ * config/rs6000/darwin-tramp.asm: Remove stray 'APPLE LOCAL' marker.
+
+2005-02-18 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (constant_boolean_node): Always create values of the
+ specified type, don't bother calling truthvalue_conversion.
+
+2005-02-18 Joseph S. Myers <joseph@codesourcery.com>
+
+ * except.c (output_function_exception_table): Call
+ assemble_external_libcall (eh_personality_libfunc).
+
+2005-02-18 Joseph S. Myers <joseph@codesourcery.com>
+
+ PR target/19886
+ * config/ia64/ia64.h (struct machine_function): Add state_num.
+ * config/ia64/ia64.c (process_epilogue,
+ process_for_unwind_directive): Use new unwind state numbers each
+ time rather than state 1.
+
+2005-02-18 Ulrich Weigand <uweigand@de.ibm.com>
+
+ PR target/20054
+ * config/s390/s390.md ("*llgt_sidi", "*llgt_sidi_split"): Move to
+ before the "*llgt_didi" pattern.
+
+2005-02-18 Jason Merrill <jason@redhat.com>
+
+ * gimplify.c (gimplify_modify_expr_rhs) [CALL_EXPR]: Revert again.
+
2005-02-18 Richard Earnshaw <rearnsha@arm.com>
* arm/lib1funcs.asm (FUNC_ALIAS): New macro.
--- /usr/src/SpecTests/sandbox-britten-memory/x86_64/mem-result/ChangeLog.cp 2005-02-18 08:09:49.000000000 +0000
+++ /usr/src/SpecTests/sandbox-britten-memory/gcc/gcc/cp/ChangeLog 2005-02-19 03:04:34.000000000 +0000
@@ -1,3 +1,20 @@
+2005-02-18 Richard Henderson <rth@redhat.com>
+
+ PR libstdc++/10606
+ * except.c (do_get_exception_ptr): New.
+ (expand_start_catch_block): Use it.
+
+2005-02-19 Jakub Jelinek <jakub@redhat.com>
+
+ * decl.c (start_decl_1): Only check TYPE_NEEDS_CONSTRUCTING
+ if type is not error_mark_node.
+
+2005-01-20 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/19508
+ * decl2.c (grokfield): Do not apply attributes to template parameters
+ as they are ignored by tsubst anyway.
+
2005-02-18 Jakub Jelinek <jakub@redhat.com>
PR c++/19813
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.