# gitk startup time improvement

4 messages from 2007-08-30 to 2007-08-30. Participants: Paul Mackerras, David Tweed, Bart Trojanowski, Alex Riesen.
Thread: https://gitlist.dev/t/9705

## Paul Mackerras, 2007-08-30 12:01

Subject: gitk startup time improvement
Message-ID: <18134.45449.527540.940620@cargo.ozlabs.ibm.com>
URL: https://gitlist.dev/e/18134.45449.527540.940620%40cargo.ozlabs.ibm.com

```
In the 'dev' branch of the gitk.git repository at

git://git.kernel.org/pub/scm/gitk/gitk.git

there is now a version of gitk that is much faster at starting up than
the standard version.  Firstly, it doesn't lay out the whole graph,
only the parts that get displayed (plus a little bit either side), and
secondly, it caches the topology information that is used to determine
which tags a commit precedes and follows, and which branches it is on.

I'd like people to try it.  Comments, bug reports, patches etc. are
welcome, of course.

Paul.

```

## David Tweed, 2007-08-30 15:16

Subject: Re: gitk startup time improvement
Message-ID: <e1dab3980708300816l5fee87a1pade9701c1bfb165@mail.gmail.com>
URL: https://gitlist.dev/e/e1dab3980708300816l5fee87a1pade9701c1bfb165%40mail.gmail.com
In-Reply-To: <18134.45449.527540.940620@cargo.ozlabs.ibm.com>

```
On 8/30/07, Paul Mackerras <paulus@samba.org> wrote:
> I'd like people to try it.  Comments, bug reports, patches etc. are
> welcome, of course.

My main repo is too small to show performance issues as of the gitk
version included in 1.5.3.rc5, but FWIW the startup times for both
1.5.3.rc5 & your branch are both less than 1s (with warm cache).

-- 
cheers, dave tweed__________________________
david.tweed@gmail.com
Rm 124, School of Systems Engineering, University of Reading.
"we had no idea that when we added templates we were adding a Turing-
complete compile-time language." -- C++ standardisation committee

```

## Bart Trojanowski, 2007-08-30 16:42

Subject: Re: gitk startup time improvement
Message-ID: <20070830164202.GR10772@jukie.net>
URL: https://gitlist.dev/e/20070830164202.GR10772%40jukie.net
In-Reply-To: <18134.45449.527540.940620@cargo.ozlabs.ibm.com>

```
* Paul Mackerras <paulus@samba.org> [070830 08:01]:
> I'd like people to try it.  Comments, bug reports, patches etc. are
> welcome, of course.

I am getting about a 4x improvement (1s vs 4s) running the 'dev' gitk on
the kernel tree, with warm cache.

-Bart

-- 
				WebSig: http://www.jukie.net/~bart/sig/

```

## Alex Riesen, 2007-08-30 20:42

Subject: Re: gitk startup time improvement
Message-ID: <20070830204222.GB15405@steel.home>
URL: https://gitlist.dev/e/20070830204222.GB15405%40steel.home
In-Reply-To: <18134.45449.527540.940620@cargo.ozlabs.ibm.com>

```
Paul Mackerras, Thu, Aug 30, 2007 14:01:13 +0200:
> In the 'dev' branch of the gitk.git repository at
> 
> git://git.kernel.org/pub/scm/gitk/gitk.git
> 
> there is now a version of gitk that is much faster at starting up than
> the standard version.  Firstly, it doesn't lay out the whole graph,
> only the parts that get displayed (plus a little bit either side), and
> secondly, it caches the topology information that is used to determine
> which tags a commit precedes and follows, and which branches it is on.
> 
> I'd like people to try it.  Comments, bug reports, patches etc. are
> welcome, of course.

Well, it works. The improvements are not very noticeable, though (I
tried git and kernel repos). Besides, there is a slight delay (~1-2
sec) in kernel repo (writing the cache out?) on exit.

I used gitk from this commit:

    commit 5cd15b6b7f87dc61f729ad31a682ffc394560273
    Author: Paul Mackerras <paulus@samba.org>
    Date:   Thu Aug 30 21:54:17 2007 +1000

	gitk: Add a cache for the topology info

BTW, what should happen if I try running many gitks in the same repo?
Is the cache safe for concurrent writing by them? Is it NFS-safe?

```
