On 10/2/2011 2:08 PM, Kyle Leber wrote:
I was able to capture a profile from svn (after remembering I have to link statically). I compiled with "-pg -O0" Here is the top of the file:

Each sample counts as 0.01 seconds.
  %   cumulative   self              self     total
 time   seconds   seconds    calls   s/call   s/call  name
 88.88    133.49   133.49 2002891836     0.00     0.00  svn_diff__snake
5.97 142.45 8.96 56 0.16 2.54 svn_diff(long, char, short)
  1.98    145.42     2.97  4163001     0.00     0.00  MD5Transform
  0.41    146.04     0.62  4163001     0.00     0.00  Decode

Is it OK to attach the full report to this user list? The resulting text file is 1.3MB and I wasn't sure if the list would tolerate an attachment of that size.


It's a weekend, so you might not get a lot of replies from people who know SVN source code, but it's likely that the full report won't be needed. There are two billion (!) calls to svn_diff__snake(), and the question is why there are so many. It might help the devs if you pasted in the entries for functions which directly called svn_diff__snake() (quite possibly svn_diff() only) and perhaps the functions which svn_diff__snake() called directly (none of any significance, if I read the above report correctly). This should be only a few dozen lines of the report. Note that you'll have to trace through the report (the top-level function is listed first, followed by its children, grandchildren, etc.) to find the entries for these functions.

I have a suspicion that one of the devs will be able to identify the issue from just the above report, but a little more information might turn out to be helpful. They certainly won't need to see information for all of the zillion functions in SVN.

--
    David Chapman         dcchap...@acm.org
    Chapman Consulting -- San Jose, CA

Reply via email to