From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1921 invoked by alias); 5 Mar 2012 22:03:26 -0000 Mailing-List: contact archer-help@sourceware.org; run by ezmlm Sender: Precedence: bulk List-Post: List-Help: List-Subscribe: List-Id: Received: (qmail 1910 invoked by uid 22791); 5 Mar 2012 22:03:24 -0000 X-SWARE-Spam-Status: No, hits=-6.9 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_HI,SPF_HELO_PASS,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org From: Tom Tromey To: Daniel Jacobowitz Cc: Jan Kratochvil , archer@sourceware.org, Jakub Jelinek Subject: Re: Inter-CU DWARF size optimizations and gcc -flto References: <20120201132307.GA32578@host2.jankratochvil.net> <87hayio7ld.fsf@fleche.redhat.com> <871upa9yyf.fsf@fleche.redhat.com> Date: Mon, 05 Mar 2012 22:03:00 -0000 In-Reply-To: (Daniel Jacobowitz's message of "Sun, 4 Mar 2012 19:25:39 -0500") Message-ID: <8762eivh7r.fsf@fleche.redhat.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.94 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-SW-Source: 2012-q1/txt/msg00019.txt.bz2 Daniel> I have no idea. One thing I'd like to revisit is your work on Daniel> threaded symbol load; I have plenty of cores available, and the Daniel> machine is pretty much useless to me until my test starts. This might help, it would be worth trying at least. I am mildly skeptical about it working well with a very big program. It seems like you could get into memory trouble, which would need a different sort of scaling approach. Also, with .gdb_index, in my tests the startup time of gdb is dominated by minsym reading, even banal stuff like sorting them. I think you'd have to insert some threading bits in there too... easy though. Daniel> There's Daniel> also a lot of room for profiling to identify bad algorithms; I think Daniel> we spend a lot of time reading the solib list from the inferior Daniel> (something I thought I and others had fixed thoroughly already...) = and Daniel> I routinely hit inefficient algorithms e.g. during "next". Yeah, I hadn't even gotten to thinking about anything other than the symbol tables. Tom> First, and simplest, punt. =C2=A0Make the user disable automatic readi= ng of Tom> shared library debuginfo (or even minsyms) and make the user explicitly Tom> mention which ones should be used -- either by 'sharedlibrary' or by a Tom> linespec extension. Daniel> I am hugely unexcited by this. Yeah, me too. It would "work" but the user experience would be not be good. Daniel> Something I've been thinking about is that incrementalism is hard in Daniel> GDB because the symbol tables are so entwined... adding any sort of Daniel> client/server interface would force us to detangle them, and then Daniel> individual objects could have a longer life. The symbol tables are my least favorite part of gdb right now, wresting the crown from linespec this year. Though maybe that is just because I don't know all parts equally well ;) Tom