1 / 18

Live from Redmond: VB9 - Performance Improvements in Visual Studio 2008

Cameron McColl Developer Visual Basic Team. Live from Redmond: VB9 - Performance Improvements in Visual Studio 2008. Overview:. VB Compiler Architecture Overview Best Practices Known Issues/Common pitfalls Improvements made for 2008 Demos of Performance Improvements for 2008

irish
Download Presentation

Live from Redmond: VB9 - Performance Improvements in Visual Studio 2008

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Cameron McCollDeveloperVisual Basic Team Live from Redmond:VB9 - Performance Improvements in Visual Studio 2008

  2. Overview: • VB Compiler Architecture Overview • Best Practices • Known Issues/Common pitfalls • Improvements made for 2008 • Demos of Performance Improvements for 2008 • How to deal with a performance problem • What happens with a reported issue • Q & A

  3. VB Compiler Architecture Overview • Rich set of UI features in the Visual Studio IDE • VB compiles user code on a Background (BG) Thread • Each project in the solution is compiled through 5 internal states:

  4. VB Compiler Architecture Overview (cont) • The BG Thread compilation enables many VB specific IDE features • When an edit occurs the compiler determines the type of change and decompiles the affected projects and files • BG Thread will then begin to compile all projects once again • Some IDE features require the project has reached a certain internal state before it can complete

  5. Best Practices • Get the latest product • Visual Studio 2008 addresses many of the biggest performance issues – very dramatically in some cases • SP1 for Visual Studio 2005 address several large issues • Method size • Avoid doing too many tasks in a single method • Avoid excess methods per container • Don’t let your files grow too large • Limit the number of files per project • Limit the number of projects per Solution

  6. Best Practices (cont) • For a detailed look at developing code with performance in mind: • Microsoft Press: “Improving .NET Application Performance and Scalability” • ISBN: 0-7356-1851-8

  7. Known Issues & Common Pitfalls • Code located on network share • Custom Code Snippets • Processing XML Comments • NVidianView Manager • Too Many Task List items • 3rd Party Addins

  8. Improvements made for 2008 • Compiler Throughput • Reduced decompilations • Reduced memory requirements • Better caching models • Improved Build Throughput • Debugging Experience • Stability = Less Crashes • IDE Responsiveness

  9. Demos of Performance Improvements for 2008:Code Dropdowns are now Asynchronous VS2005 VS2008

  10. Demos of Performance Improvements for 2008:Loading a Solution is now Asynchronous VS2005 VS2008

  11. Demos of Performance Improvements for 2008:Stepping in the Debugger is much faster VS2005 VS2008

  12. Demos of Performance Improvements for 2008: Progress Dialog with Cancel button

  13. Notes on the Wait Dialog: • The goal is to never see this dialog. • If you see this regularly then we clearly have a performance problem and you should report it to us directly. • Dialog appears if a UI operation takes more than 2 seconds.

  14. How to deal with a performance problem • What changed most recently? • Try to isolate the exact steps to reproduce the problem • Check for the common pitfalls listed previously • Change one thing at a time • Make sure you have the latest Service Pack • Search MSDN and Forums for similar issues

  15. How to deal with a performance problem (cont) • If you are sure that the problem is a performance issue with Visual Studio itself feel free to contact us directly and we will work with you to diagnose the problem. • vbperf@microsoft.com

  16. What happens with a reported issue (Watson)? • Dump file created by customer or CSS • Dump file uploaded to central server • MS team attempts to identify cause • Fix is made in next possible version (sometimes patch)

  17. What happens with a reported issue (manual)? • When the product is too slow we can help in 2 ways: • Customer can send their solution to Microsoft (fastest) • Create a dump file using a tool and upload to Microsoft manually

  18. Q & A

More Related