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 debug/58315] [4.8/4.9/5 Regression] Excessive memory use with -g


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

Aldy Hernandez <aldyh at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |WAITING

--- Comment #8 from Aldy Hernandez <aldyh at gcc dot gnu.org> ---
On mainline, with ./cc1plus -O2 -g, I approximately see a maximum of:

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND    
 9204 aldyh     20   0  827704 697088  25036 R  99.7  4.3   4:35.01 cc1plus

which, though large, is not anywhere close to 6GB.  If I'm reading this right,
it seems like 697megs.

Var tracking seems to be resetting itself after this 697meg usage, and
finishing in a sensible manner:

b.ii: In function âbool {anonymous}::test03()â:
b.ii:84991:1: note: variable tracking size limit exceeded with
-fvar-tracking-assignments, retrying without

With -fno-var-tracking, I see a maximum of:

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
 9880 aldyh     20   0  478588 347524  24976 R  99.3  2.2   3:14.13 cc1plus

So, with var tracking we use 697MB, whereas without we use 478MB, both
relatively reasonable IMO.  The compilation does take a while on my i7 2.9GHz
(4:35 and 3:14 respectively), but all within (annoying) reason.

Richard, can we close this PR?

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