From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11730 invoked by alias); 13 Jun 2003 16:24:02 -0000 Mailing-List: contact gdb-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sources.redhat.com Received: (qmail 11683 invoked from network); 13 Jun 2003 16:24:01 -0000 Received: from unknown (HELO localhost.redhat.com) (207.219.125.131) by sources.redhat.com with SMTP; 13 Jun 2003 16:24:01 -0000 Received: from redhat.com (localhost [127.0.0.1]) by localhost.redhat.com (Postfix) with ESMTP id 526642B5F; Fri, 13 Jun 2003 12:23:53 -0400 (EDT) Message-ID: <3EE9FA99.8070201@redhat.com> Date: Fri, 13 Jun 2003 16:24:00 -0000 From: Andrew Cagney User-Agent: Mozilla/5.0 (X11; U; NetBSD macppc; en-US; rv:1.0.2) Gecko/20030223 X-Accept-Language: en-us, en MIME-Version: 1.0 To: Daniel Jacobowitz Cc: Elena Zannoni , David Carlton , gdb , Jim Blandy Subject: Re: DW_AT_specification and partial symtabs References: <20030612170545.GA16995@nevyn.them.org> <16104.47067.182016.78574@localhost.redhat.com> <20030613133414.GB29641@nevyn.them.org> <16105.55964.91811.625007@localhost.redhat.com> <3EE9EFFE.6050607@redhat.com> <20030613154932.GA313@nevyn.them.org> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2003-06/txt/msg00256.txt.bz2 > On Fri, Jun 13, 2003 at 11:38:38AM -0400, Andrew Cagney wrote: > >> Daniel wrote: >> >> > >> > > 1) is very easy to measure. GDB has a command line option --readnow >> > > which forces symtabs to be read in immediately. I tried my normal >> > > performance testcase: a dummy main() linked to all of mozilla's >> > > component libraries, with full stabs debug info. Note stabs, not >> > > DWARF2, so the timing may vary. Also note that we duplicate psymtab >> > > and symtab creation doing it this way, so it overestimates the cost. > >> >> I think that's an understatement. > > > Not really. You can subtract the psymtab time from the combined time, > and then compare. It still more than triples the time. So we agree, 25% is significant but 3% is not. A better question is what % of symtabs get draged in by a C++ `break main; run'. Wasn't the original conjecture that symtabs get sucked in anyway so why do it twice. Remember, as we've discovered with threads, users define ``GDB is slow to start'' differently to us as GDB developers. We think of it as: $ gdb program (gdb) but the user appears to be more focused on things like: (gdb) break main and: (gdb) run Break point main reached (gdb) The first can be really badly fudged by not even loading the [p]symtab . Just makes `break main' a bit slow :-) So, we really don't know what symtab info is critical to GDB. An uneducated guess, based on ``break main; run'' is: - addr -> line - function/symbol -> addr - addr -> symbol Andrew