public inbox for gdb-prs@sourceware.org help / color / mirror / Atom feed
From: "dje at google dot com" <sourceware-bugzilla@sourceware.org> To: gdb-prs@sourceware.org Subject: [Bug gdb/17764] Excessive seeking when reading debug data pegs the CPU @100% Date: Sat, 27 Dec 2014 17:43:00 -0000 [thread overview] Message-ID: <bug-17764-4717-Q28uZBHsZr@http.sourceware.org/bugzilla/> (raw) In-Reply-To: <bug-17764-4717@http.sourceware.org/bugzilla/> https://sourceware.org/bugzilla/show_bug.cgi?id=17764 --- Comment #4 from dje at google dot com --- Huh. 46 megs of debug info is not that much (my monster benchmark has ~1.5G of debug info, with a 350M .gdb_index section, and "gdb foo" takes 13 seconds to get to the command prompt, 12 of which is spent reading the ELF symbol table, and 10 of that is spent demangling ELF symbols - which is to say ~1 second is spent on debug info). Without .gdb_index it takes about 55 seconds (this is from memory so I may be off by a little, but not by much - I look at this issue a lot). Plus gdb doesn't really "read" debug info in the .gdb_index case. It's basically just an mmap() plus a bit of time spent processing the address table. So it's interesting that .gdb_index doesn't make a difference. It would be interesting to see gprof data for gdb. How easy would it to recompile gdb with '-O2 -pg', write a small script to exercise the bug, run gdb --batch -x the-script, and then send us the output of "gprof gdb gmon.out"? To recompile gdb, one could just cd into the gdb directory, rm *.o, and do "make CFLAGS='-O2 -pg'". Another idea, if it's taking a minute (so you've got time to do this), is to to attach to the running gdb from a parent gdb, then do repeated "bt, continue, ctrl-c", say every 5 seconds. That's a quick hack way of collecting some data. -- You are receiving this mail because: You are on the CC list for the bug.
next prev parent reply other threads:[~2014-12-27 17:43 UTC|newest] Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top 2014-12-27 15:46 [Bug gdb/17764] New: " mrsam@courier-mta.com 2014-12-27 15:52 ` [Bug gdb/17764] " jan.kratochvil at redhat dot com 2014-12-27 16:21 ` dje at google dot com 2014-12-27 17:09 ` mrsam@courier-mta.com 2014-12-27 17:43 ` dje at google dot com [this message] 2014-12-27 18:27 ` mrsam@courier-mta.com 2014-12-27 18:44 ` jan.kratochvil at redhat dot com 2014-12-27 18:45 ` jan.kratochvil at redhat dot com 2014-12-28 0:08 ` mrsam@courier-mta.com 2014-12-28 14:40 ` jan.kratochvil at redhat dot com 2014-12-29 15:53 ` hjl.tools at gmail dot com 2014-12-29 23:43 ` mrsam@courier-mta.com 2014-12-29 23:53 ` hjl.tools at gmail dot com 2014-12-30 1:23 ` mrsam@courier-mta.com 2014-12-30 16:27 ` hjl.tools at gmail dot com
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=bug-17764-4717-Q28uZBHsZr@http.sourceware.org/bugzilla/ \ --to=sourceware-bugzilla@sourceware.org \ --cc=gdb-prs@sourceware.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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).