From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 26960 invoked by alias); 20 Feb 2004 16:47:20 -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 26951 invoked from network); 20 Feb 2004 16:47:19 -0000 Received: from unknown (HELO nevyn.them.org) (66.93.172.17) by sources.redhat.com with SMTP; 20 Feb 2004 16:47:19 -0000 Received: from drow by nevyn.them.org with local (Exim 4.30 #1 (Debian)) id 1AuDnt-000332-GR; Fri, 20 Feb 2004 11:47:05 -0500 Date: Fri, 20 Feb 2004 16:47:00 -0000 From: Daniel Jacobowitz To: Elena Zannoni Cc: David Carlton , gdb@sources.redhat.com Subject: Re: Huge slowdown since 6.0 Message-ID: <20040220164704.GA11587@nevyn.them.org> Mail-Followup-To: Elena Zannoni , David Carlton , gdb@sources.redhat.com References: <20040218210927.GA16641@nevyn.them.org> <20040220050905.GA15209@nevyn.them.org> <16438.14300.323849.306261@localhost.redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <16438.14300.323849.306261@localhost.redhat.com> User-Agent: Mutt/1.5.1i X-SW-Source: 2004-02/txt/msg00276.txt.bz2 On Fri, Feb 20, 2004 at 11:37:48AM -0500, Elena Zannoni wrote: > Daniel Jacobowitz writes: > > How can they possibly be to blame? Well, they are. And reverting the > > change for enumerators definitely won't do any harm. Take a look at > > this, read it two or three times if necessary - it took me about a > > dozen: > > > > > > - &objfile->static_psymbols, > > > > + cu_language == language_cplus > > > > + ? &objfile->static_psymbols > > > > + : &objfile->global_psymbols, > > > > If I swap "static" and "global", it reduces GDB startup time by roughly > > 40% for glibc with debug information, which contains a lot of C > > enumerators. I assume that is what you meant to do in the first place? > > If so I can recover the speed hit for C for GDB 6.1, and then address > > the larger issues with large numbers of global psymbols in HEAD after > > we branch. > > Another point in favor of the theory that conditional expressions are > bad. > > This should be fine, consider it preapproved. However, what you are > really saying is that qsort performance is really bad in case we have > lots of symbols to sort. But how many symbols? You didn't post the > numbers. OK, I'll post it to gdb-patches and check it in, later today. What numbers would you like besides these? I can generate anything else you're interested in. http://sources.redhat.com/ml/gdb/2004-02/msg00236.html The list padding makes those numbers inexact, but the gist is: about 3200 global symbols with enumerators static, and about 700,000 with them global. -- Daniel Jacobowitz MontaVista Software Debian GNU/Linux Developer