threads / discuss / 20999

very slow "git gc --aggressive" in GIT-1.6.4.4

Subject: very slow "git gc --aggressive" in GIT-1.6.4.4

## tl;dr

2 messages between Sep 18, 2009 and Sep 18, 2009.

replies: 1people: 2as markdown or json

Leo Razoumov· Sep 18, 2009, 19:23 UTC · lore

I noticed that "git gc --agressive" takes 5 times longer with git-1.6.4.4 than with git-1.6.2.5.

Below are benchmarks on my Linux Ubuntu-9.04 laptop (Core2 Duo 2.54GHz). As a test repo I use a mirror of the official GIT upstream.

GIT-v1.6.4.4 ----------------- git.upstream> time git gc --agressive Counting objects: 105217, done. Delta compression using up to 2 threads. Compressing objects: 100% (103507/103507), done. Writing objects: 100% (105217/105217), done. Total 105217 (delta 77228), reused 0 (delta 0) git gc --aggressive 168.31s user 0.58s system 180% cpu 1:33.52 total

GIT-1.6.2.5.LR1 --------------------- git.upstream> time git gc --aggressive Counting objects: 105217, done. Delta compression using 2 threads. Compressing objects: 100% (103507/103507), done. Writing objects: 100% (105217/105217), done. Total 105217 (delta 76235), reused 0 (delta 0) git gc --aggressive 30.97s user 0.48s system 141% cpu 22.177 total ==========================================

168 seconds for git-1.6.4.4 versus 22 seconds for git-1.6.2.5.
What gives?
--Leo--
Michael Andreen· Sep 18, 2009, 19:56 UTC · re: Leo Razoumov · lore

Re: very slow "git gc --aggressive" in GIT-1.6.4.4

On Friday 18 September 2009 21:23:59 Leo Razoumov wrote:
Show 5 quoted lines
> I noticed that "git gc --agressive" takes 5 times longer with
> git-1.6.4.4 than with git-1.6.2.5.
> 
> Below are benchmarks on my Linux Ubuntu-9.04 laptop (Core2 Duo 2.54GHz).
> As a test repo I use a mirror of the official GIT upstream.

git-1.6.3 and later changed the settings for --aggressive to window=250 and depth=250, which produces a tighter pack. The earlier setting wasn't really aggressive.

/Michael

← back to recent threads