all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Dov Grobgeld <dov.grobgeld@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: cyd@gnu.org, schwab@linux-m68k.org, 10580@debbugs.gnu.org
Subject: bug#10580: 24.0.92; gdb initialization takes more than one minute at 100% CPU
Date: Thu, 10 May 2012 21:43:39 +0300	[thread overview]
Message-ID: <CA++fsGFwuX7tCAamkK4pWZoE+DXUy+n4zEkWAM11KAXN=bxKcQ@mail.gmail.com> (raw)
In-Reply-To: <83ipg4yp2z.fsf@gnu.org>

[-- Attachment #1: Type: text/plain, Size: 2911 bytes --]

I just downloaded gdb from cvs and tried with the latest version and there
are still duplicates. Perhaps it is because of gcc? But on the positive
side there is indeed a huge difference in the gdb output.

prompt> gdb --version
GNU gdb (GDB) Fedora (7.3.50.20110722-13.fc16)
prompt> /usr/local/public-dev/bin/gdb --version
GNU gdb (GDB) 7.4.50.20120509-cvs
prompt> gdb -i=mi MyExec < /tmp/gdb.in > /tmp/gdb-old.out
prompt> /usr/local/public-dev/bin/gdb -i=mi MyExec < /tmp/gdb.in >
/tmp/gdb-new.out
prompt> ls -1s --block-size=1 /tmp/gdb*.out
 884736 /tmp/gdb-new.out
3727360 /tmp/gdb-old.out
prompt> perl -ne 'while(/(\w+)=\"(.*?)\"/g) { print "$1=$2\n"; }'
/tmp/gdb-old.out | sort | wc
  67311   67311 3522494
prompt> perl -ne 'while(/(\w+)=\"(.*?)\"/g) { print "$1=$2\n"; }'
/tmp/gdb-new.out | sort | wc
  14221   14221  837082
prompt> perl -ne 'while(/(\w+)=\"(.*?)\"/g) { print "$1=$2\n"; }'
/tmp/gdb-old.out | sort |uniq| wc
   3931    3931  220654
prompt> perl -ne 'while(/(\w+)=\"(.*?)\"/g) { print "$1=$2\n"; }'
/tmp/gdb-new.out | sort |uniq| wc
   2245    2245  137404

But even the factor 837k vs 137k is substantial, so it is still valid to do
an internal uniq within gdb. I'll try to put together a patch.

Regards,
Dov

On Thu, May 10, 2012 at 7:32 PM, Eli Zaretskii <eliz@gnu.org> wrote:

> > Date: Thu, 10 May 2012 09:00:49 +0300
> > From: Dov Grobgeld <dov.grobgeld@gmail.com>
> > Cc: schwab@linux-m68k.org, cyd@gnu.org, 10580@debbugs.gnu.org
> >
> > I tried running file-list-exec-source-files and I get duplicates as well.
> > Try the following:
> >
> > prompt> echo -file-list-exec-source-files > /tmp/gdb.in
> > prompt> gdb -i=mi emacs < /tmp/gdb.in > /tmp/gdb.out
> > prompt> perl -ne 'while(/(\w+)=\"(.*?)\"/g) { print "$1=$2\n"; }'
> > /tmp/gdb.out | sort | head -15
> > file=alloc.c
> > file=alloc.c
> > file=allocator.c
> > file=atimer.c
> > file=atimer.c
> > file=bidi.c
> > file=bidi.c
> > file=buffer.c
> > file=buffer.c
> > file=buffer.h
> > file=buffer.h
> > file=buffer.h
> > file=buffer.h
> > file=buffer.h
> > file=buffer.h
>
> I don't see anything like that.  Here's my output:
>
>  addr=0x011b4ea5
>  addr=0x011b4ea5
>  addr=0x012329a8
>  disp=del
>  disp=del
>  disp=keep
>  enabled=y
>  enabled=y
>  enabled=y
>  file=../lib/allocator.h
>  file=../lib/careadlinkat.h
>  file=../lib/ignore-value.h
>  file=../lib/intprops.h
>  file=../lib/intprops.h
>  file=../lib/intprops.h
>
> IOW, all the duplicates I see are header files.  Not a single .c file
> shows up, not even if I change "head -15" into "head -100".
>
> > My version of gdb is:
> >
> > GNU gdb (GDB) Fedora (7.2-52.fc14)
>
> Maybe you should upgrade, I dunno.  I use 7.4.1, FWIW.
>
> Or maybe GCC versions later than what I have do that.
>
> > For my executable gdb outputs full paths as well as the fullname field,
> > which expands the output considerably.
>
> Here too, but that's expected (and necessary).
>

[-- Attachment #2: Type: text/html, Size: 4287 bytes --]

  reply	other threads:[~2012-05-10 18:43 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-22 12:42 bug#10580: 24.0.92; gdb initialization takes more than one minute at 100% CPU Dov Grobgeld
2012-01-23  0:53 ` Glenn Morris
     [not found]   ` <CA++fsGG4YuTtb2VC9R+GRcPN5+JSaKpkb+uO3WAX0+VXmh8HDQ@mail.gmail.com>
2012-01-23  9:21     ` Glenn Morris
2012-01-25  0:37       ` Glenn Morris
2012-01-25  8:49         ` Dov Grobgeld
2012-01-25  9:39           ` Dov Grobgeld
2012-01-25 19:05             ` Glenn Morris
2012-04-30  5:33               ` Dov Grobgeld
2012-04-30  6:36                 ` Dov Grobgeld
2012-05-06  4:13                   ` Chong Yidong
2012-05-06  4:55                     ` Dov Grobgeld
2012-05-06  5:39                       ` Chong Yidong
2012-05-06  7:06                         ` Dov Grobgeld
2012-05-07  2:53                           ` Chong Yidong
2012-05-07  5:07                             ` Dov Grobgeld
2012-05-07  6:11                               ` Chong Yidong
2012-05-07  6:26                                 ` Chong Yidong
2012-05-08  5:33                                   ` Dov Grobgeld
2012-05-08  7:56                                     ` Dov Grobgeld
2012-05-08  8:28                                       ` Chong Yidong
2012-05-08 11:59                                         ` Dov Grobgeld
2012-05-08 16:25                                           ` Chong Yidong
2012-05-08 17:47                                             ` Eli Zaretskii
2012-05-08 21:07                                               ` Dov Grobgeld
2012-05-08 21:24                                                 ` Andreas Schwab
2012-05-08 21:30                                                   ` Dov Grobgeld
2012-05-09  7:47                                                     ` Andreas Schwab
2012-05-09  8:44                                                       ` Dov Grobgeld
2012-05-09 17:36                                                         ` Eli Zaretskii
2012-05-10  6:00                                                           ` Dov Grobgeld
2012-05-10 14:13                                                             ` Chong Yidong
2012-05-10 19:07                                                               ` Dov Grobgeld
2012-05-10 20:25                                                                 ` Stefan Monnier
2012-05-11  6:33                                                                 ` Chong Yidong
2012-05-11  8:29                                                                   ` Dov Grobgeld
2012-05-11  9:47                                                                     ` Eli Zaretskii
2012-05-11 13:27                                                                       ` Chong Yidong
2012-11-05 20:36                                                                         ` Dov Grobgeld
2012-11-05 20:46                                                                           ` Eli Zaretskii
2012-11-05 23:51                                                                             ` Stefan Monnier
2012-05-10 16:32                                                             ` Eli Zaretskii
2012-05-10 18:43                                                               ` Dov Grobgeld [this message]
2012-05-08 17:38                                           ` Eli Zaretskii
2012-12-14  4:14 ` bug#10580: 24.0.92; gdb initialization takes more than one minute at 100 Jean-Philippe Gravel
2012-12-18  4:45   ` Jean-Philippe Gravel
2012-12-21  4:01     ` Chong Yidong
2013-03-01  3:31       ` Jean-Philippe Gravel
2013-03-11 17:14         ` Stefan Monnier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CA++fsGFwuX7tCAamkK4pWZoE+DXUy+n4zEkWAM11KAXN=bxKcQ@mail.gmail.com' \
    --to=dov.grobgeld@gmail.com \
    --cc=10580@debbugs.gnu.org \
    --cc=cyd@gnu.org \
    --cc=eliz@gnu.org \
    --cc=schwab@linux-m68k.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.