{"id":5741,"date":"2010-01-24T08:25:54","date_gmt":"2010-01-24T08:25:54","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/bharry\/2010\/01\/24\/state-of-vs-2010-performance\/"},"modified":"2018-08-14T00:20:42","modified_gmt":"2018-08-14T00:20:42","slug":"state-of-vs-2010-performance","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/bharry\/state-of-vs-2010-performance\/","title":{"rendered":"State of VS 2010 Performance"},"content":{"rendered":"<p>Up until Christmas, I was blogging almost every day about the progress we\u2019ve made on addressing the Beta 2 feedback that VS 2010 had significant performance issues.&#160; Since then, our efforts have hardly taken a break.&#160; I saw active investigations all the way up to Christmas eve and then a bit of a lull until Jan 4th when activity resumed in full force.<\/p>\n<p>The improvements are so many and so dramatic that I really couldn\u2019t enumerate them all here.&#160; I think the best way to summarize it is to talk about the feedback we are getting from people as they use new builds.&#160; Since our renewed performance effort started, we have produced 3 Super Limited Community Technology Preview releases (SLCTPs \u2013 yeah, a mouth full :)).&#160; These have been delivered to virtually anyone who has expressed performance dissatisfaction, and for whom we could find contact information.&#160; With each one we contact as many recipients as we can and solicit feedback on the changes.<\/p>\n<p>About a week ago, we delivered SLCTP3.&#160; A few hundred people (outside Microsoft) have received it and so far we have close to a hundred survey responses from them.&#160; We also made a huge push to get everyone in Developer Division upgraded to a January build.&#160; I think, as of late this week, we managed to get over 80% of the division upgraded.&#160; Lastly, we\u2019ve reached out to partner teams like Blend, Exchange, CodePlex and Oslo to upgrade and give us feedback on the new builds.&#160; The difference between now and Beta 2 is staggering.<\/p>\n<p>Before I go into the details, let me remind you of the results we got from our initial Beta 2 surveys.<\/p>\n<p>Our initial external customer survey said that approximately 30% of Beta 2 testers where somewhat or very dissatisfied with Beta 2 performance (the earler version of the \u201cPerformance\u201d chart below).&#160; After seeing that and running an internal survey of dogfooders, we found that about 70% of internal users were somewhat or very dissatisfied with Beta 2 performance.<\/p>\n<p>Now, at SLCTP3, it looks very different.&#160; Our external LCTP3 results look like this.&#160; And remember, all of these results are from people who complained about Beta 2 performance (not the 70% of people who didn\u2019t).&#160; We didn\u2019t give any of the LCTPs to or survey people who were already happy.<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/8\/2019\/02\/clip_image002_2.gif\"><img decoding=\"async\" style=\"border-bottom: 0px;border-left: 0px;border-top: 0px;border-right: 0px\" title=\"clip_image002\" border=\"0\" alt=\"clip_image002\" src=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/8\/2019\/02\/clip_image002_thumb.gif\" width=\"400\" height=\"342\" \/><\/a><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/8\/2019\/02\/clip_image002%5B9%5D.gif\"><img decoding=\"async\" style=\"border-bottom: 0px;border-left: 0px;border-top: 0px;border-right: 0px\" title=\"clip_image002[9]\" border=\"0\" alt=\"clip_image002[9]\" src=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/8\/2019\/02\/clip_image002%5B9%5D_thumb.gif\" width=\"400\" height=\"322\" \/><\/a><\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/8\/2019\/02\/clip_image002%5B11%5D.gif\"><img decoding=\"async\" style=\"border-bottom: 0px;border-left: 0px;border-top: 0px;border-right: 0px\" title=\"clip_image002[11]\" border=\"0\" alt=\"clip_image002[11]\" src=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/8\/2019\/02\/clip_image002%5B11%5D_thumb.gif\" width=\"400\" height=\"320\" \/><\/a><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/8\/2019\/02\/clip_image002%5B13%5D.gif\"><img decoding=\"async\" style=\"border-bottom: 0px;border-left: 0px;border-top: 0px;border-right: 0px\" title=\"clip_image002[13]\" border=\"0\" alt=\"clip_image002[13]\" src=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/8\/2019\/02\/clip_image002%5B13%5D_thumb.gif\" width=\"400\" height=\"297\" \/><\/a><\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/8\/2019\/02\/clip_image002%5B7%5D.gif\"><img decoding=\"async\" style=\"border-bottom: 0px;border-left: 0px;border-top: 0px;border-right: 0px\" title=\"clip_image002[7]\" border=\"0\" alt=\"clip_image002[7]\" src=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/8\/2019\/02\/clip_image002%5B7%5D_thumb.gif\" width=\"400\" height=\"307\" \/><\/a><\/p>\n<p>And our internal dogfooder survey looks like this.&#160; The \u201cimproved\u201d questions are relative to Beta 2.&#160; The Ready To Ship and Feature Satisfaction questions are absolute.&#160; The performance feature satisfaction question was 70% somewhat or very dissatisfied after Beta 2. <\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/8\/2019\/02\/image_2.png\"><img decoding=\"async\" style=\"border-bottom: 0px;border-left: 0px;border-top: 0px;border-right: 0px\" title=\"image\" border=\"0\" alt=\"image\" src=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/8\/2019\/02\/image_thumb.png\" width=\"644\" height=\"663\" \/><\/a> <\/p>\n<p>As you can see, the picture looks totally different.&#160; The very dissatisfied numbers are nearly gone and the total dissatisfied are way better.&#160; I have no illusion that we can make everyone happy \u2013 we could work on it for 2 more years and still have a few people who would like even more but I feel like we have really turned the corner.&#160; We aren\u2019t done but we are now ready to go out with a broad Release Candidate and solicit feedback from thousands rather than hundreds.<\/p>\n<p>Beyond the statistics, some of the verbatim customer comments tell an even more compelling story\u2026<\/p>\n<ul>\n<li>The LCTP-3 build appears to resolve all of the issues I have reported pertinent to the normal VS2010 Beta 2 r\nelease: the uninstall and reinstall procedure worked without any anomalies, including full installation of the LCTP-3 version of MS Help Viewer 1.0; \u2026 I have seen no issues with LCTP-3 in the brief work it so far that suggests it is not fully ready for full production.<\/li>\n<li>The performance is acceptable now and I would consider the product generally shippable\u2026 <\/li>\n<li>Performance on SLCTP3 is ten times better than that of Beta. Previously in Beta I&#8217;d crash every 1.5 hours. Since moving to SLCTP3 I have not received any crashes to date.<\/li>\n<li>I&#8217;ve been running the SLCTP3 for about 3.5 hours today and its been amazing. Previously I would have crashed at least 2 times and had insane perf issues.<\/li>\n<li>It\u2019s such a huge improvement so far from a performance perspective that I&#8217;m excited to work with it again. <\/li>\n<li>I&#8217;d say the performance is about equal or maybe slightly better in some scenarios than VS2008. Exciting compared to the not so good performance of beta 2.<\/li>\n<li>I reported performance problems with navigating the IDE (menus, windows, etc.) over RDP, and this build is a big improvement over beta 2. VS2008 still feels snappier when compared side-by-side on the same VM, but the performance doesn&#8217;t bother me in this build of VS2010.<\/li>\n<li>The Silverlight designer (still working on a Silverlight 3 project) seems to load MUCH faster than with Beta 2.&#160; It&#8217;s a night and day difference.<\/li>\n<\/ul>\n<p>And not to ignore any negative feedback:<\/p>\n<ul>\n<li>Build time is 10-15% longer for the same solution compared to 2008<\/li>\n<li>Compilation of WPF project is &gt;500% slower on VS 2010 SLCTP 3<\/li>\n<li>Intellisense pop-ups are slow to pop up<\/li>\n<li>Was using ReSharper 5.0 but its way too slow and buggy at the moment. It makes the environment very fragile and unstable.<\/li>\n<li>When its a fresh install it feels great. However, if you have a lot of add-in&#8217;s it seems to start to get a little sluggish on startup and when you perform certain actions. <\/li>\n<\/ul>\n<p>We are following up on all of these with survey respondents.<\/p>\n<p>We are not done with performance or functional improvements but I believe we have addressed all of the major issues and are now ready to make sure we\u2019ve hit all of the combinatorics, edge cases, etc.&#160; That\u2019s what a Release Candidate will help us do.&#160; In parallel with getting an RC ready, there are a few performance areas where we are still working diligently.&#160; Probably the biggest one is solution build performance.&#160; Many build scenarios are faster than VS 2008 but we\u2019re also still tracking a number of applications where it is slower (generally between 15 and 20%).&#160; We are also putting some finishing touches on some remaining editor\/WPF painting and responsiveness issues.&#160; I think even without them you\u2019ll find the RC performance to be quite good but we\u2019ll continue to polish it while we wait for RC feedback.<\/p>\n<p>We\u2019re working on getting the release candidate ready now and I\u2019ll let you know as soon as it is available.<\/p>\n<p>It\u2019s been a hectic couple of months working through all of the feedback and resulting issues.&#160; It\u2019s not quite what I was expecting to be doing but that\u2019s the way it goes.&#160; I\u2019ve got more fodder for posts on things we\u2019ve learned along the way and I\u2019ll try to get a few of them written over the next month or so.<\/p>\n<p>Thanks for helping us work through this and deliver a product that you are going to love,<\/p>\n<p>Brian<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Up until Christmas, I was blogging almost every day about the progress we\u2019ve made on addressing the Beta 2 feedback that VS 2010 had significant performance issues.&#160; Since then, our efforts have hardly taken a break.&#160; I saw active investigations all the way up to Christmas eve and then a bit of a lull until [&hellip;]<\/p>\n","protected":false},"author":244,"featured_media":14617,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[7,4],"class_list":["post-5741","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-performance","tag-visual-studio"],"acf":[],"blog_post_summary":"<p>Up until Christmas, I was blogging almost every day about the progress we\u2019ve made on addressing the Beta 2 feedback that VS 2010 had significant performance issues.&#160; Since then, our efforts have hardly taken a break.&#160; I saw active investigations all the way up to Christmas eve and then a bit of a lull until [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/posts\/5741","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/users\/244"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/comments?post=5741"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/posts\/5741\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/media\/14617"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/media?parent=5741"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/categories?post=5741"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/tags?post=5741"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}