This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
Re: Caching of object/libraries/files
- From: Nick Savoiu <savoiu at ics dot uci dot edu>
- To: gdb at sources dot redhat dot com
- Date: Wed, 24 Mar 2004 12:25:11 -0800
- Subject: Re: Caching of object/libraries/files
The problem that I have is that after I run gdb once, exit it then start it
right after it seems to reload all the debug info from disk. I was expecting
a good deal of them to be loaded from the OS file cache -> much less disk
activity the second time around.
Nick
> On Thu, Mar 18, 2004 at 10:46:47AM -0800, Nick Savoiu wrote:
> > Hi all,
> >
> > I have a rather large project composed of a small driver executable and
> > quite a few .so libraries that it uses.
> >
> > When I invoke it with GDB, upon executing 'run' it takes quite a while for
> > GDB to do it's thing (i.e. load symbols, whatever else it does)
particularly
> > since it does a lot of disk access.
> >
> > I was thinking that, if I start a GDB session on this project, run it for
a
> > while then quit and immediately restart a similar session, then most of
the
> > files would be cached. However, I see the same amount of disk access for
the
> > second session when 'run' is invoked as for the first.
> >
> > Any ideas why this is so? The GDB session itself uses about 340MB and I
have
> > 1GB RAM.
>
> This is something that I've been meaning to fix for a long, long time.
> We unload all shared objects when the program exits; what we ought to
> do is move them to a separate cache structure.