SvnBridge - Performance
I just did a small (and inconclusive) test. I run the following:
DateTime start = DateTime.Now;
Process svn = Process.Start("svn", "co http://localhost:8081/SvnBridge SvnBridge");
svn.WaitForExit();
Console.WriteLine("Took: {0}", DateTime.Now - start);
First with the released version of SvnBridge (from October 07) and then with the trunk version of SvnBridge. The results means that I am doing something right:
Checking out SvnBridge's code takes 04:49.125 minutes using the released version, but just 02:42.234 minutes using the trunk version. Just for kicks, making a second checkout using the same trunk instance of SvnBridge completes in 01:06.468 minutes.
This is the results of a change in the threading model, introducing two levels of caching, and general profiling and optimization.
It is important to note that I run those tests from my home machine in Israel, which means that I have a fairly high latency (common scenario for running the local version). The caching improvements is very important when you consider the hosted version performance.
Comments
That's a really good perf improvement. Is the performance mostly from the caching in high latency scenarios?
Maybe I missed a blog post somewhere, but is there any reason in particular you are working on SvnBridge so much?
Comment preview