Orcas Version Control Performance Improvements
I’m heading to Disney World for the week in the morning so I may not be blogging too much next week (we’ll see what my wife has to say about it :)) Today I was reviewing some results from some performance work we are doing for Version Control in the Orcas release. We are also doing some work for Work Item Tracking but don’t have full results yet. These are not final numbers – there are still things we have left to investigate but they are exciting and I wanted to share them. You’ll need some notes to interpret them.
- The chart includes the operation, an indication of whether it was a single file, a folder and its files or a tree. In some cases it includes the number of items being operated on and in other cases it does not (I don’t have all of the counts).
- These measurements are times spent in SQLServer. That tends to be the bottleneck in VC operations so improvements there tend to have the most dramatic end user effect. Later in the cycle we’ll have end-to-end client based numbers but this is what we have for now.
- The chart includes the before changes and after changes times in seconds and a ratio of before/after and is sorted by that ratio.
- The operations we measured are not exhaustive but were mostly chosen on how often they are used or the degree to which we knew from our internal dogfooding that we have problems with them.
- You’ll notice that 2 operations are slower than before “QueryLabel – file” – in this case the difference is so small we don’t really care; “Branch – 1533650 items” – this one we are looking at closely and expect to make additional changes to improve the operation.
Drum roll please… Note the improvements are in multiples. So the largest improvement is 219 times faster. That’s a big difference, eh? The one that I’m happiest about (although it isn’t the biggest) is “Get tree”. That’s the operation I do all the time. That gets any updates on the server down to my local machine. It’s 2.3 times faster. That’s gonna be nice. Now you’ll notice that it went from 103 seconds to 46 seconds and say well that’s still not very fast. This is a workspace will hundreds of thousands of files in it. That’s pretty darned fast. As I say, these numbers aren’t final. I’m expecting them to get even better over the coming months but it’s pretty cool to see the improvements we’ve made so far. In the next couple of weeks I’m going to write a blog post about all of the great new stuff coming in Orcas. I’m eager to hear your feedback.