From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: =?utf-8?Q?=C3=93scar_Fuentes?= Newsgroups: gmane.emacs.help Subject: Re: Official Git mirror? Date: Mon, 21 Feb 2011 19:17:28 +0100 Message-ID: <878vx9i75z.fsf@wanadoo.es> References: <83fwritmmx.fsf@gnu.org> <878vx9rcq1.fsf@rapttech.com.au> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: dough.gmane.org 1298312293 10824 80.91.229.12 (21 Feb 2011 18:18:13 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Mon, 21 Feb 2011 18:18:13 +0000 (UTC) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Mon Feb 21 19:18:09 2011 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1PraKm-0007Hh-Ar for geh-help-gnu-emacs@m.gmane.org; Mon, 21 Feb 2011 19:18:08 +0100 Original-Received: from localhost ([127.0.0.1]:60375 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PraKl-0003a0-My for geh-help-gnu-emacs@m.gmane.org; Mon, 21 Feb 2011 13:18:07 -0500 Original-Received: from [140.186.70.92] (port=52980 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PraKO-0003Zl-5j for help-gnu-emacs@gnu.org; Mon, 21 Feb 2011 13:17:45 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PraKM-0000PQ-KZ for help-gnu-emacs@gnu.org; Mon, 21 Feb 2011 13:17:44 -0500 Original-Received: from lo.gmane.org ([80.91.229.12]:53587) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PraKM-0000Oz-Ah for help-gnu-emacs@gnu.org; Mon, 21 Feb 2011 13:17:42 -0500 Original-Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1PraKK-00073d-GG for help-gnu-emacs@gnu.org; Mon, 21 Feb 2011 19:17:40 +0100 Original-Received: from 103.red-79-150-239.dynamicip.rima-tde.net ([79.150.239.103]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 21 Feb 2011 19:17:40 +0100 Original-Received: from ofv by 103.red-79-150-239.dynamicip.rima-tde.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 21 Feb 2011 19:17:40 +0100 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 74 Original-X-Complaints-To: usenet@dough.gmane.org X-Gmane-NNTP-Posting-Host: 103.red-79-150-239.dynamicip.rima-tde.net User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) Cancel-Lock: sha1:ltBP3U3xOYYguSOrFJTmhApIuRY= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 80.91.229.12 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:79286 Archived-At: Tim X writes: >> Maybe the differences are not big enough to notice by most people that >> update their Emacs mirrors from time to time, but it is not accurate to >> say that bzr's network protocol is no less efficient than git. > > Such comparisons are meaingless. There are two many variables not > accounted for, such as network, server load, client/server versions and > even differences in repositories. Okay, let's repeat the experiment on a controlled environment. LAN 100 Mb/s, idle. A quad-core 2.4GHz Q6600 machine with 8 GB RAM, Kubuntu 10.10 64 bits (let's call this machine `qcore') A single-core single-thread Pentium M 2.0GHz with 2 GB RAM, Kubuntu 10.10 32 bits (let's name this one `single') git version 1.7.1 bzr version 2.2.1 real / user / sys git ssh://qcore (from single) 5m34s 4m28s 0m27s bzr nosmart+bzr://qcore (from single) 9m54s 9m21s 0m9s bzr bzr://qcore (from single) 7m37s 6m15s 0m8s git ssh://single (from qcore) 2m50s 2m23s 0m7s bzr nosmart+bzr://single (from qcore) 6m47s 6m27s 0m3s bzr bzr://single (from qcore) 6m24s 4m17s 0m3s On all cases the operation seems CPU-bound on the *client*. Git shows a CPU spike on the server at the beginning, on the "counting objects" phase. The Bzr server shows no significant CPU usage when connected with the "nosmart" option. Else it pegs one CPU core for a large part of the phase where revisions are sent, and uses up to 1.5 GB of RAM for a short moment, although most of the time it is about 400 MB (on the 64bit machine). Neither bzr nor git clients seems to exploit the multiple cores while cloning. The bzr client uses a lot of memory (almost 600 MB on the 64 bit machine, almost 400 on the 32 bits machine.) It seems that "nosmart" is used for compensating for servers with busy CPUs at the cost of more data sent to the client and more work offloaded to it. > However, what really matters is the updates rather than a fresh full > branching/cloning as you only do the long initial copy once. We are discussing protocol efficiency. It is reasonable to expect that any shortcoming on the cloning process will show in the update operation. Moreover, on the timings I used an special case for bzr (nosmart) that may tilt the results to its favor if we extrapolate the results to update operations. My experience updating emacs bzr from Launchpad (with the smart protocol) is that it is noticeably slower than updating emacs git from repo.or.cz. (To address just one factor, network latency is important on short operations, but pinging to repo.or.cz is 50% slower than pinging to launchpad.net from here.) > Personally, I prefer git, but use bzr just as much as a number of > projects I work on use bzr. I've found the initial checkouts to be > fairly close and later updates to also be about the same. I guess that your anecdotal experience is as good as mine. [snip] > The real point to note, as mentioned by Eli, is that the git repositories > are frequently hours behind bzr. That's a different issue. No discussion about that. [snip]