This is the mail archive of the
gdb-prs@sourceware.org
mailing list for the GDB project.
Re: breakpoints/2230: gdb does not handle a large number of breakpointsgracefully
- From: Thomas Neumann <tneumann at users dot sourceforge dot net>
- To: nobody at sources dot redhat dot com
- Cc: gdb-prs at sources dot redhat dot com,
- Date: 18 Feb 2007 23:28:02 -0000
- Subject: Re: breakpoints/2230: gdb does not handle a large number of breakpointsgracefully
- Reply-to: Thomas Neumann <tneumann at users dot sourceforge dot net>
The following reply was made to PR breakpoints/2230; it has been noted by GNATS.
From: Thomas Neumann <tneumann@users.sourceforge.net>
To: gdb-gnats@sources.redhat.com
Cc:
Subject: Re: breakpoints/2230: gdb does not handle a large number of breakpoints
gracefully
Date: Mon, 19 Feb 2007 00:21:56 +0100
The slowdown is primarily caused by bp_location_chain in
gdb/breakpoint.c. It consists of a linear list of all breakpoins, which
is scanned for duplicates for each new breakpoint.
Experimentally changing it from a list to a splay tree (organized by
address) reduces the runtime for the test case from 8 minutes to 2
minutes. Not exactly instantaneous, but much better. Now the hot spot is
find_line_common.