Re: [PATCH] refs.c: add a function to sort a ref list, rather then sorting on add
- From
Julian Phillips <julian@quantumfyre.co.uk>
- Date
- Apr 17, 2007, 22:03 UTC
- Message-ID
- <Pine.LNX.4.64.0704172300170.16435@beast.quantumfyre.co.uk>
- In-Reply-To
- <Pine.LNX.4.64.0704171350000.5473@woody.linux-foundation.org>
On Tue, 17 Apr 2007, Linus Torvalds wrote:
Show 11 quoted lines
> > > On Tue, 17 Apr 2007, Julian Phillips wrote: >> >> It's the tag auto-following code, I'm calling read_ref to see if I already >> have that tag - and it appears that doing that a few thousand times takes a >> while. > > Heh. I think we should probably call read_refs() just once to read them > all (when most of them are packed, that's cheap), and then after that, > have some way to just check for a match on the refs we have cached.
I had a look at the exclude_existing function in show-ref. That uses for_each_ref to build a path_list, and path_list_has_path to do the filtering...
Using that I get (worst of 5, warm cache): real 0m0.526s user 0m0.302s sys 0m0.176s
-- Julian --- The descent to Hades is the same from every place. -- Anaxagoras