[PATCH 3 of 3] revlog: read index data using mmap

Augie Fackler raf at durin42.com
Tue Oct 4 12:58:42 EDT 2016


On Tue, Oct 04, 2016 at 06:28:54PM +0200, Pierre-Yves David wrote:
>
>
> On 10/04/2016 04:59 PM, Jun Wu wrote:
> ># HG changeset patch
> ># User Jun Wu <quark at fb.com>
> ># Date 1475550701 -3600
> >#      Tue Oct 04 04:11:41 2016 +0100
> ># Node ID 99e7b0589b916b83d825882e907dd79082f4a2d7
> ># Parent  5ebdfd4ffbedbfe66b7a36cbd06b1e8e624ae7ad
> ># Available At https://bitbucket.org/quark-zju/hg-draft
> >#              hg pull https://bitbucket.org/quark-zju/hg-draft -r 99e7b0589b91
> >revlog: read index data using mmap
> >
> >Revlog indexes are suppose to be small but they can be not-so-small for
> >large repos, where the time needed to read the revlog index is not
> >negligible. This patch makes it use mmap to read the content. It has visible
> >performance improvement for large repos.
>
> Can we get some number for small and large repository here ?
>
> I remember Matt making arguments against the use of mmap in multiple
> occurrence in the past. I can find the details again, but I think this was
> about the amount of kernel roundtrip involved compared to a plain read.

We could probably do the benchmark effectively with just some sort of
debugrevlog construct, on some large and small indicies, rather than
on some entire repositories.

>
> --
> Pierre-Yves David
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel at mercurial-scm.org
> https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


More information about the Mercurial-devel mailing list