[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: [TSVN] Profiling questions

From: SteveKing <steveking_at_gmx.ch>
Date: 2004-10-31 17:19:31 CET

Will Dean wrote:

> I've built a little test harness to allow me to stress the shell
> extension's interfaces under a profiler. (Just the DevPartner profiler
> for VS at the moment).

What do you mean by "just" the DevPartner profiler? I think that one is
good enough, especially since it's free ;)

> All I've been looking at so far is how fast we can get the status for a
> single file, where we hit the statuscache each time.
> To do this, I basically init the shell extension, then call IsMemberOf
> 10000 times on the same file. I know this doesn't represent any
> realistic workload, but it does confine the testing within TSVN, and
> does test a path which represents system-wide per-file load on the
> shell, so i think it's worthwhile.

That way you'll be testing the part that TSVN does, not really the whole
part which includes fetching the status. But since we don't do the
status fetching ourselves but use the Subversion lib for that, that's a
very good test!

> As ever when profiling, one discovers interesting things, and I shall
> probably ask lots of tedious questions for a bit....

I'm waiting for those ;)

> It turns out that a lot of time was being spent in registry access,
> which is counter-intuitive, as a great deal of effort has been put into
> avoiding this, with quite a neat lazy-reading system.

I thought I had reduced the access to the registry with the ShellCache
You can play around with the timeout settings in that class a little.
Increasing the values will reduce the access to the registry. But
increasing them too much makes settings changes not to show up immediately.

> While trying to investigate this, I have discovered that there are two
> instances of ShellCache - one global one, and one in SVNFolderStatus.
> Is this the intention?

Not really ;)

Fixed in revision 1884.


   oo  // \\      "De Chelonian Mobile"
  (_,\/ \_/ \     TortoiseSVN
    \ \_/_\_/>    The coolest Interface to (Sub)Version Control
    /_/   \_\     http://tortoisesvn.tigris.org
To unsubscribe, e-mail: dev-unsubscribe@tortoisesvn.tigris.org
For additional commands, e-mail: dev-help@tortoisesvn.tigris.org
Received on Sun Oct 31 17:23:30 2004

This is an archived mail posted to the TortoiseSVN Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.