Re: Git and GCC
- From
Jeff King <peff@peff.net>
- Date
- Dec 6, 2007, 17:39 UTC
- Message-ID
- <20071206173946.GA10845@sigill.intra.peff.net>
- In-Reply-To
- <alpine.LFD.0.99999.0712060915590.555@xanadu.home>
On Thu, Dec 06, 2007 at 09:18:39AM -0500, Nicolas Pitre wrote:
Show 6 quoted lines
> > The downside is that the threading partitions the object space, so the > > resulting size is not necessarily as small (but I don't know that > > anybody has done testing on large repos to find out how large the > > difference is). > > Quick guesstimate is in the 1% ballpark.
Fortunately, we now have numbers. Harvey Harrison reported repacking the gcc repo and getting these results:
Show 7 quoted lines
> /usr/bin/time git repack -a -d -f --window=250 --depth=250 > > 23266.37user 581.04system 7:41:25elapsed 86%CPU (0avgtext+0avgdata 0maxresident)k > 0inputs+0outputs (419835major+123275804minor)pagefaults 0swaps > > -r--r--r-- 1 hharrison hharrison 29091872 2007-12-06 07:26 pack-1d46ca030c3d6d6b95ad316deb922be06b167a3d.idx > -r--r--r-- 1 hharrison hharrison 324094684 2007-12-06 07:26 pack-1d46ca030c3d6d6b95ad316deb922be06b167a3d.pack
I tried the threaded repack with pack.threads = 3 on a dual-processor machine, and got:
time git repack -a -d -f --window=250 --depth=250
real 309m59.849s user 377m43.948s sys 8m23.319s
-r--r--r-- 1 peff peff 28570088 2007-12-06 10:11 pack-1fa336f33126d762988ed6fc3f44ecbe0209da3c.idx -r--r--r-- 1 peff peff 339922573 2007-12-06 10:11 pack-1fa336f33126d762988ed6fc3f44ecbe0209da3c.pack
So it is about 5% bigger. What is really disappointing is that we saved only about 20% of the time. I didn't sit around watching the stages, but my guess is that we spent a long time in the single threaded "writing objects" stage with a thrashing delta cache.
-Peff