locked
Faster Debugging - Disable Packages RRS feed

  • Question

  • A Slimmer Debugging Experience

    When visual studio loads using /RootSuffix Exp It seems there are a lot of packages that run that I don't really rely on for debugging. It would be nice if I could just add a small subset that covers the features of Visual Studio that my package is interested. What is the best way to weed out all of the packages that I am not concerned about. I was able to go into the registry and comment out the keys in the (Exp) experimental hive packages section. It would be nice if there was a tool that would toggle these on and off. If I have time I will build it but I haven't had time these days. 



    • Edited by jwize Sunday, March 4, 2012 10:03 AM
    Sunday, March 4, 2012 10:03 AM

Answers

  • I've found that debug symbol loading is where most of the startup slowness occurs for me, especially when I use both the managed and native debuggers. If by chance you checked the "enable unmanaged code debugging" in your package project properties, you might want to disable it, as that can speed up the load time.

    Also, if you are using a symbol server to find PDB's, be sure to set the Cache directory in the Debugging\Symbols category of the Tools.Options dialog. Once you've debugged the project a few times, if there are still PDBs that it can't find, I usually just switch over to use the symbol cache exclusively, by tweaking the symbol location list to only list the cache directory, so I don't keep searching the listed symbol servers for a PDB they obviously don't have.

    Sincerely,


    Ed Dore

    Wednesday, March 7, 2012 4:19 PM

All replies

  • There is no automated way to do this, or really any safe way.  Packages can have inter-dependencies based on services, that information isn't registered anywhere and lots of packages don't assume some 'built in' package they may rely on can be missing.  What exactly is taking a long time? Do you have it set up to load symbols for every dll without a local symbol cache?

    Ryan

    Tuesday, March 6, 2012 4:48 AM
  • I just feel each time I debug it is taking more time than it needs to.

    Wednesday, March 7, 2012 9:55 AM
  • I've found that debug symbol loading is where most of the startup slowness occurs for me, especially when I use both the managed and native debuggers. If by chance you checked the "enable unmanaged code debugging" in your package project properties, you might want to disable it, as that can speed up the load time.

    Also, if you are using a symbol server to find PDB's, be sure to set the Cache directory in the Debugging\Symbols category of the Tools.Options dialog. Once you've debugged the project a few times, if there are still PDBs that it can't find, I usually just switch over to use the symbol cache exclusively, by tweaking the symbol location list to only list the cache directory, so I don't keep searching the listed symbol servers for a PDB they obviously don't have.

    Sincerely,


    Ed Dore

    Wednesday, March 7, 2012 4:19 PM
  • I am guessing that for the most part the packages will lazy load anyways so my idea may be incorrect.

    However, somehow Telerik, Devexpress ,and Resharper seem to make their ways through the cracks and slow things down.

    • Edited by jwize Tuesday, March 20, 2012 3:26 AM
    Tuesday, March 20, 2012 3:25 AM
  • Things should lazy load. Some people (reasonably or not) will be more eager by say setting an auto-load context for Solution_Exists (and sometimes No_Solution too!).

    Ryan

    Tuesday, March 20, 2012 5:23 AM