From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S261527AbVDZPiy (ORCPT ); Tue, 26 Apr 2005 11:38:54 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S261579AbVDZPiy (ORCPT ); Tue, 26 Apr 2005 11:38:54 -0400 Received: from ns.suse.de ([195.135.220.2]:54166 "EHLO mx1.suse.de") by vger.kernel.org with ESMTP id S261527AbVDZPit (ORCPT ); Tue, 26 Apr 2005 11:38:49 -0400 From: Chris Mason To: Magnus Damm Subject: Re: Mercurial 0.3 vs git benchmarks Date: Tue, 26 Apr 2005 11:38:45 -0400 User-Agent: KMail/1.8 Cc: Linus Torvalds , Mike Taht , Matt Mackall , linux-kernel , git@vger.kernel.org References: <20050426004111.GI21897@waste.org> <200504260713.26020.mason@suse.com> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200504261138.46339.mason@suse.com> Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org On Tuesday 26 April 2005 11:09, Magnus Damm wrote: > On 4/26/05, Chris Mason wrote: > > This agrees with my tests here, the time to apply patches is somewhat > > disk bound, even for the small 100 or 200 patch series. The io should be > > coming from data=ordered, since the commits are still every 5 seconds or > > so. > > Yes, as long as you apply the patches to disk that is. I've hacked up > a small backend tool that applies patches to files kept in memory and > uses a modifed rabin-karp search to match hunks. So you basically read > once and write once per file instead of moving data around for each > applied patch. But it needs two passes. > > And no, the source code for the entire Linux kernel is not kept in > memory - you need a smart frontend to manage the file cache. Drop me a > line if you are interested. Sorry, you've lost me. Right now the cycle goes like this: 1) patch reads patch file, reads source file, writes source file 2) update-cache reads source file, writes git file Which of those writes are you avoiding? We have a smart way to manage the cache already for the source files...the vm does pretty well. There's nothing to manage for the git files. For the apply a bunch of patches workload, they are write once, read never (except for the index). -chris