From: Fredrik Gustafsson <iveqy@iveqy.com>
To: Duy Nguyen <pclouds@gmail.com>
Cc: Fredrik Gustafsson <iveqy@iveqy.com>,
Karsten Blees <karsten.blees@gmail.com>,
Git List <git@vger.kernel.org>
Subject: Re: [PATCH v2 0/5] New hash table implementation
Date: Thu, 26 Sep 2013 13:08:18 +0200 [thread overview]
Message-ID: <20130926110818.GE6615@paksenarrion.iveqy.com> (raw)
In-Reply-To: <CACsJy8BQDwHJiDyaOfcmOSg+=jpj-NyCTtw1vLwppSwYxF5hhA@mail.gmail.com>
On Thu, Sep 26, 2013 at 05:26:27PM +0700, Duy Nguyen wrote:
> On Thu, Sep 26, 2013 at 5:16 PM, Fredrik Gustafsson <iveqy@iveqy.com> wrote:
> > On Tue, Sep 24, 2013 at 11:50:16AM +0200, Karsten Blees wrote:
> >> Tests can be reproduced with 'time echo "perfhash[map] <method> 1000" | ./test-hashmap', see test-hashmap.c for definition of method flags.
> >
> > So I'm still curious about the actual performance improvements for git.
> > I runned git describe on the linux kernel with both the old hashmap and
> > this new one:
> >
> > ...
> >
> > I can't see any improvements at all here. What do I miss? Am I running
> > git describe in the wrong way? Does linux.git have too few tags to be
> > important?
>
> I wonder if it makes any difference if there are a lot more refs. I
> hear gerrit creates a lot but don't know how many. linux-2.6 has ~350
> refs. How about increasing the number of refs to 3500 refs?
So I runned:
for i in $(git rev-list HEAD ); do git tag "tag$i" $i ; done
in my linux repo and aborted it after a while:
iveqy@minilla:/srv/slask/linux$ git tag | wc -l
9323
So it's a few at least. Not sure how those artificial tagnames would
hurt or improve the performance.
Old hashtable
=============
iveqy@minilla:/srv/slask/linux$ time ../git/git describe HEAD
v3.12-rc2-83-g4b97280
real 0m0.384s
user 0m0.288s
sys 0m0.092s
iveqy@minilla:/srv/slask/linux$ time ../git/git describe HEAD
v3.12-rc2-83-g4b97280
real 0m0.383s
user 0m0.284s
sys 0m0.100s
iveqy@minilla:/srv/slask/linux$ time ../git/git describe HEAD
v3.12-rc2-83-g4b97280
real 0m0.386s
user 0m0.312s
sys 0m0.072s
New hashtable
=============
iveqy@minilla:/srv/slask/linux$ time ../git/git describe HEAD
v3.12-rc2-83-g4b97280
real 0m0.382s
user 0m0.300s
sys 0m0.084s
iveqy@minilla:/srv/slask/linux$ time ../git/git describe HEAD
v3.12-rc2-83-g4b97280
real 0m0.382s
user 0m0.288s
sys 0m0.092s
iveqy@minilla:/srv/slask/linux$ time ../git/git describe HEAD
v3.12-rc2-83-g4b97280
real 0m0.384s
user 0m0.296s
sys 0m0.088s
--
Med vänliga hälsningar
Fredrik Gustafsson
tel: 0733-608274
e-post: iveqy@iveqy.com
next prev parent reply other threads:[~2013-09-26 11:00 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-10 23:27 [PATCH/RFC 0/5] New hash table implementation Karsten Blees
2013-09-10 23:28 ` [PATCH/RFC 1/5] add a hashtable implementation that supports O(1) removal Karsten Blees
2013-09-11 23:56 ` Junio C Hamano
2013-09-23 9:16 ` Karsten Blees
2013-09-12 4:10 ` Junio C Hamano
2013-09-23 9:21 ` Karsten Blees
2013-09-10 23:28 ` [PATCH/RFC 2/5] buitin/describe.c: use new hash map implementation Karsten Blees
2013-09-10 23:29 ` [PATCH/RFC 3/5] diffcore-rename.c: move code around to prepare for the next patch Karsten Blees
2013-09-10 23:30 ` [PATCH/RFC 4/5] diffcore-rename.c: simplify finding exact renames Karsten Blees
2013-09-10 23:30 ` [PATCH/RFC 5/5] diffcore-rename.c: use new hash map implementation Karsten Blees
2013-09-24 9:50 ` [PATCH v2 0/5] New hash table implementation Karsten Blees
2013-09-24 9:51 ` [PATCH v2 1/5] add a hashtable implementation that supports O(1) removal Karsten Blees
2013-09-24 9:52 ` [PATCH v2 2/5] buitin/describe.c: use new hash map implementation Karsten Blees
2013-09-24 9:52 ` [PATCH v2 3/5] diffcore-rename.c: move code around to prepare for the next patch Karsten Blees
2013-09-24 9:53 ` [PATCH v2 4/5] diffcore-rename.c: simplify finding exact renames Karsten Blees
2013-09-24 9:54 ` [PATCH v2 5/5] diffcore-rename.c: use new hash map implementation Karsten Blees
2013-09-24 10:18 ` [PATCH v2 0/5] New hash table implementation Fredrik Gustafsson
2013-09-24 11:16 ` Tay Ray Chuan
2013-09-26 14:38 ` Karsten Blees
2013-09-26 10:16 ` Fredrik Gustafsson
2013-09-26 10:26 ` Duy Nguyen
2013-09-26 11:08 ` Fredrik Gustafsson [this message]
2013-09-26 11:14 ` Duy Nguyen
2013-09-26 13:55 ` Karsten Blees
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130926110818.GE6615@paksenarrion.iveqy.com \
--to=iveqy@iveqy.com \
--cc=git@vger.kernel.org \
--cc=karsten.blees@gmail.com \
--cc=pclouds@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).