Re: GDB STL Memory Usage Issue

Mark Kettenis
2007-04-10T08:16:35Z

> Date: Mon, 9 Apr 2007 19:40:58 -0400
> From: "Ravi Ramaseshan" <ramaseshan.ravi@gmail.com>
>
> Hi,
>
> I observed some strange behavior with the following system that I
> would like to know more about:
>
> I'm compiling a very memory intensive C++ application that uses STL
> (hashmaps of lists). Every few seconds I erase() the entire hashmap
> (and the lists). When I run the program standalone and examine the
> memory usage using top, I see the total virtual memory of the program
> grow (sometimes to 60+MB) before the erase call and after the erase
> call drop down to a few MB - which is the behavior I would expect.
>
> However, when I run the same program through GDB, the erase() does not
> seem to have any effect and the virtual memory usage keeps on rising -
> which I do not understand.
>
> I am using GCC 4.0.3, GDB 6.4 and am compiling the program with
> debugging information. I would like to understand the reasons for such
> a behavior of my program under GDB.
>
> Thanks in advance,

Smells like an operating system bug to me.