GNU bug report logs - #10580
24.0.92; gdb initialization takes more than one minute at 100% CPU

Previous Next

Package: emacs;

Reported by: Dov Grobgeld <dov.grobgeld <at> gmail.com>

Date: Sun, 22 Jan 2012 17:55:03 UTC

Severity: important

Tags: patch

Found in version 24.0.92

Done: Stefan Monnier <monnier <at> iro.umontreal.ca>

Bug is archived. No further changes may be made.

Full log


Message #65 received at 10580 <at> debbugs.gnu.org (full text, mbox):

From: Dov Grobgeld <dov.grobgeld <at> gmail.com>
To: Chong Yidong <cyd <at> gnu.org>
Cc: 10580 <at> debbugs.gnu.org
Subject: Re: bug#10580: 24.0.92; gdb initialization takes more than one minute
	at 100% CPU
Date: Tue, 8 May 2012 14:59:36 +0300
[Message part 1 (text/plain, inline)]
Indeed, my result is much fatter.

(safe-length gdb-debug-log) => 223

and the total length of the messages is about 800k. So it seems that the
time spent is simply the parsing of this large chunk of data? What gdb
command is run that outputs all the file="..." commands?

Thanks,
Dov

On Tue, May 8, 2012 at 11:28 AM, Chong Yidong <cyd <at> gnu.org> wrote:

> Dov Grobgeld <dov.grobgeld <at> gmail.com> writes:
>
> > I added the above patch and the result is as follows:
> > After the following two lines:
> >
> >     nread = read_process_output (proc, channel);
> >     pp = XPROCESS(proc);
> >
> > nread==4095, pp->pid=1234 repeatedly. (Actually 1234 seems to be an
> > arbitrary, but constant number between 1000 and 2000).
> >
> > Some more info that I found through strace that might help.
> > Alltogether read_process_output() is called 214 times and thus a total
> > of 870k of text is read through /dev/ptmx to read_process_output() .
> > Could the amount of data possibly explain the slowness?
>
> Maybe, if this process IO is emitted non-stop.  But this indicates that
> the traffic is due to the main connection with the main gdb process
> (which has a positive pid), not with the pty which gdb-mi uses for IO
> (which has pid -2) like I guessed.
>
> Could you do
>
> M-: (setq gdb-enable-debug t) RET
>
> and show the value of the variable `gdb-debug-log'?
>
> For example, when I run M-x gdb on the Emacs binary itself,
> `gdb-debug-log' gets 22 entries by the time I get to the (gdb) prompt;
> this is the usual GDB-MI chatter.  From the time I "run" the program
> till the debugged program exits, it gains another 24 entries.  Do you
> see a lot more traffic with your program?
>
[Message part 2 (text/html, inline)]

This bug report was last modified 12 years and 74 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.