On Thu, Sep 26, 2013 at 6:08 PM, Fredrik Gustafsson <iveqy@xxxxxxxxx> wrote: > 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@xxxxxxxxx> 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 OK I have to say I don't see any justification for more code then. -- Duy -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html