From mboxrd@z Thu Jan 1 00:00:00 1970 From: Linus Torvalds Subject: Re: Performance issue of 'git branch' Date: Fri, 24 Jul 2009 19:39:27 -0700 (PDT) Message-ID: References: <7vtz146mgr.fsf@alter.siamese.dyndns.org> <20090723160740.GA5736@Pilar.aei.mpg.de> <20090723165335.GA15598@Pilar.aei.mpg.de> <20090723195548.GA28494@Pilar.aei.mpg.de> Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Cc: Junio C Hamano , Git Mailing List , "Carlos R. Mafra" , Daniel Barkalow , Johannes Schindelin To: david@lang.hm X-From: git-owner@vger.kernel.org Sat Jul 25 04:39:55 2009 Return-path: Envelope-to: gcvg-git-2@gmane.org Received: from vger.kernel.org ([209.132.176.167]) by lo.gmane.org with esmtp (Exim 4.50) id 1MUXAx-0004DI-0t for gcvg-git-2@gmane.org; Sat, 25 Jul 2009 04:39:55 +0200 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754963AbZGYCjq (ORCPT ); Fri, 24 Jul 2009 22:39:46 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752377AbZGYCjq (ORCPT ); Fri, 24 Jul 2009 22:39:46 -0400 Received: from smtp1.linux-foundation.org ([140.211.169.13]:49153 "EHLO smtp1.linux-foundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751089AbZGYCjp (ORCPT ); Fri, 24 Jul 2009 22:39:45 -0400 Received: from imap1.linux-foundation.org (imap1.linux-foundation.org [140.211.169.55]) by smtp1.linux-foundation.org (8.14.2/8.13.5/Debian-3ubuntu1.1) with ESMTP id n6P2dSna026713 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Fri, 24 Jul 2009 19:39:29 -0700 Received: from localhost (localhost [127.0.0.1]) by imap1.linux-foundation.org (8.13.5.20060308/8.13.5/Debian-3ubuntu1.1) with ESMTP id n6P2dRhO000606; Fri, 24 Jul 2009 19:39:27 -0700 X-X-Sender: torvalds@localhost.localdomain In-Reply-To: User-Agent: Alpine 2.01 (LFD 1184 2008-12-16) X-Spam-Status: No, hits=-3.459 required=5 tests=AWL,BAYES_00 X-Spam-Checker-Version: SpamAssassin 3.2.4-osdl_revision__1.47__ X-MIMEDefang-Filter: lf$Revision: 1.188 $ X-Scanned-By: MIMEDefang 2.63 on 140.211.169.13 Sender: git-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Archived-At: On Fri, 24 Jul 2009, david@lang.hm wrote: > On Fri, 24 Jul 2009, Linus Torvalds wrote: > > > On Fri, 24 Jul 2009, david@lang.hm wrote: > > > > > > what does the performance look like if you just do a static compile > > > instead? > > > > I don't even know - I don't have a static version of curl. I could install > > one, of course, but since I don't think that's the solution anyway, I'm > > not going to bother. > > I wasn't thinking a static version of curl, I was thinking a static version of > the git binaries. see how fast things could be if no startup linking was > nessasary. Well, that's what I meant. If I add '-static' to the link flags, I get /usr/bin/ld: cannot find -lcurl collect2: ld returned 1 exit status because I simply don't have a static library version of curl (and if I do NO_CURL, I fail the link due to not having a static version of zlib). That's what I meant by "I could install a static version of curl" - I could install the debug libraries, but it just isn't a normal thing to do on any modern distribution. The right thing to do really would be to not have -lcurl for the main git binary at all. Preferably done by having http walking handled by an external process (the way we already do rsync), but it's probably easier to just make all the clone/fetch/ls-remote things be a separate binary. Of course, I'd personally solve the problem with NO_CURL=1, but that's probably not acceptable in general. Linus