From: Daniel Jacobowitz <drow@mvista.com>
To: Eric Brunel <eric.brunel@pragmadev.com>
Cc: gdb@sources.redhat.com
Subject: Re: Variable read time * 3+ between program compiled w/ gcc 2.95 and w/ gcc 3.2 on Solaris
Date: Thu, 24 Apr 2003 14:52:00 -0000 [thread overview]
Message-ID: <20030424145200.GB14226@nevyn.them.org> (raw)
In-Reply-To: <03042416451601.01259@eb.pragmadev>
On Thu, Apr 24, 2003 at 04:45:16PM +0200, Eric Brunel wrote:
> Hi all,
>
> I don't know if the following problem belongs here or in the gcc
> newsgroup: we've noticed a drastic loss of performance when reading
> program variables from gdb between the versions 2.95.3 and 3.2.2 of
> gcc on Solaris 2.7. Here is a short example showing the problem:
>
> --foo.cpp---------------
> int x;
>
> int main(int argc, char *argv[])
> {
> x = 12;
> return 0;
> }
> ------------------------
>
> I then compile this program using g++ 2.95.3 and 3.2.2 into the
> binaries foo2 and foo3 resp. Then I run:
>
> gdb -batch -x gdb.cmds fooN
>
> with the following commands file:
>
> --gdb.cmds--------------
> break foo.cpp:6
> run
> print x
> print x
> ... (200 times)
> print x
> quit
> -------------------------
>
> Here are typical results:
>
> $ time gdb -batch -x gdb.cmds foo2 > /dev/null
>
> real 0m0.564s
> user 0m0.150s
> sys 0m0.110s
>
> $ time gdb -batch -x gdb.cmds foo3 > /dev/null
>
> real 0m1.726s
> user 0m1.340s
> sys 0m0.260s
>
> The reading time has been increased by a factor 3+. This is even worse
> if the variable is a structure and if I access fields in it. With a
> chained list read via x->next->next->next..., we got times around
> .5/.75 seconds with g++ 2.95, and more than 30 seconds (!) with g++
> 3.2
>
> We tested versions 5.2 and 5.3 of gdb and got similar results.
>
> Is this a bug? Is it known? Is there a workaround or a patch? Thanks a
> lot in advance.
Probably a bug; not known. I don't know why this would happen,
especially for such a simple program; if you can get an ida of where
gdb is spending its time that would be interesting. A decent profiling
tool should be able to do the job.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer
next prev parent reply other threads:[~2003-04-24 14:52 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-04-24 14:39 Eric Brunel
2003-04-24 14:52 ` Daniel Jacobowitz [this message]
2003-04-28 8:40 ` Eric Brunel
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=20030424145200.GB14226@nevyn.them.org \
--to=drow@mvista.com \
--cc=eric.brunel@pragmadev.com \
--cc=gdb@sources.redhat.com \
/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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox