VS 2005 seems unusable for large VB converted project. How do I turn off the background compiler.

VS 2005 seems unusable for large VB converted project.  How do I turn off the background compiler.

I have a fairly large project that I migrated from VB6 to VS2005.  This is the RTM version of VS2005.  There are many issues that I need to fix up in the code, but every time I change one line of code, my system runs 100% CPU for 30 seconds.

This is not even close to usable.  You might think I have a slow machine, but I am running this in a P4 3.5 GHZ with 1GB of RAM, and a SATA 150 hard drive.

I will be forced to abandon use of VS 2005 for this project unless I can find a work around for this issue.

Please help!



Answer this question

VS 2005 seems unusable for large VB converted project. How do I turn off the background compiler.

  • Heath Stewart

    I found this option and it is already checked.

     

    By


  • rvaneijk

    Hi,

    I'm the perf lead for the Visual Basic Team and I'm more than happy to help you address your problems. In order to do that, I need to get some information of how your solution is structured and what features you are using. Can you please provide us with the following information:

    How many projects are there in your solution
    How many references do you have Are these references "file-references" or "project to project - references
    Are you using XML comments in your code
    How many errors/warnings does your solution contain
    What types of changes are causing the slowdown Is it editing code, or changing UI components in the Winforms designer Are you doing these edits while debugging
    Are you able to do edits in the file while the CPU is at 100%

    Feel free to contact me at Abel.Valadez@_microsoft.com (remove the underscore)

    - Abel, MS



  • -els-

    In the visual studio options check the show all settings box.  Projects and solutions -> build and run -> check the "only build startup projects and dependencies on run" box

  • jsizemore

    Here are some hints that greatly improved our experience...

    1. If you use Remote Desktop then start it with the /console argument, i.e don't use anything other than the console session
    2. Taking advice from Microsoft we turned of AutoToolBoxPopulate and also ensured the Toolbox was not showing. Seems crazy and although I didn’t seem to gain anything other people reported it helped.



  • albertkhor

    Hi, BigTimeHacker,

    I’m sorry to hear that you’re having performance problems! Performance problems are something that we try to keep a handle on, and in fact I’ve got several members of my team looking at more performance improvements this month, specifically targeting enterprise-scale projects. This is an area in which we hope to provide lots of improvement going forward.



    To address your specific question: the background compiler cannot be turned off in Visual Basic .Net – it’s actually the thing that’s providing all of the Intellisense information, formatting information, and so on. I discuss this in some detail at http://msdn.microsoft.com/msdnmag/issues/05/06/AdvancedBasics/default.aspx. In that article are some tips to improve performance in larger-scale applications.



    If you don’t mind, I’d like to put you in touch with my performance lead. Not only will he be able to make more recommendations, but he would be able to verify that any future work that we do is addressing your type of application.



    --Matt Gertz--*

    Visual Basic Compiler Lead

  • Richard_C

    Any help with this would be greatly appreciated.
  • TBUCKET

    I have the same issue. I had around 8 projects in my solution but this was so unusable I now work on one project at a time. Now even with one project it is still unusable with upwards of a 30 second delay every time I edit a line.

    Each project is large but not that large. I could run all 8 projects in one solution in VS2003 with no issues now I can't even run one project.

    Additional information I can give you:

    File Refs: 2

    Web Service Ref: 1

    Framework Ref's (System): 10

    No XML Comments used

    40 errors, 3 warnings

    Editing code is the issue, no UI in this particular component. typically see the delay when I write a piece of code the uses a variable I haven't declared yet or I rename a variable that is used else where in the code.

    My main Dev machine is a Dell Inspiron 6000 notebook 2.00 Ghz, 1 Gbytes RAM. Not the fastest thing on the planet but still respectable.

    This is all rubbish, you don't need this all this information, typical delaying ploy if ever I saw one. This must be a known issue, come on, come clean and admit it.

    Please Please help us, this is killing us!!!!


  • SPSali

    I had the same task as you do: to convert a large scale project from vb6 to vb.net.
    I had lots of problems with performance and stabillity of ther IDE after the automatical conversion. Crashes of the IDE all of the times (and it was pure vb code and ONLY 3 activex controls from vb6 - no foreign component).
    Basically IDE was almost unusable at this point. The only practical solution was to comment anything in the code and gradually uncomment code and fix the issues function by function and module by module.
    Now the solution is almost converted (with some issues that are clearly bugs in .net environment and horrific workarrounds) but the IDE is stable with few crashes and performance is at least in the domain of usability (an 8GHz CPU would make it resonable).
    You may try the same approach - for me it worked: uncomment and fix gradually.
    Have luck and patience - it takes time.

  • anchun

    Same issues here with ~140k lines of code and 22 projects. Adding a line is long but typing '<' will take minutes.

    I remember there was a problem back with Visual Studio 2002 (didn't test it with later versions) with long namespaces (i.e.: 4+ levels) where intellisense was going awry with as little as 4-5 projects with only 1 class in each.

    As for now, it was long with 2002 but I can't work with this project well in 2005, simply too long. The only thing I can do is redesign my components and references where I switch to file referencing.

    Then the problem is 3 fold:

    1. make sure that all developers will have all the correct versions of the libraries; fortunately, Team Foundation's build server helps for that;
    2. File referencing locks the referenced library so that if a build occurs while Visual Studio is opened, the build will fail;
    3. I don't know of a way for Visual Studio to support multiple location for a reference, i.e.: local + remote so that if I am working on a (A) referenced library and, once built, that the other library (B) that references (A) will have access to it right now, not with the nightly build.

    If the files weren't locked, I could work fine with File References and Team Foundation's build server in most cases; although I'd have to refine how to work out with branches & versioning DLLs in the build process.

    Maxime Bombardier


  • Kollega

    pkr2000 -

    I'm sorry to hear that you're experiencing these problems as well. I'm a program manager on the C# team and would like to get a little more information regarding your project.

    Could you send information regarding Abel's questions to me at karenliu@microsoft.com and we'll try to track down these problems

    Here were the questions:

    How many projects are there in your solution
    How many references do you have Are these references "file-references" or "project to project - references
    Are you using XML comments in your code
    How many errors/warnings does your solution contain
    What types of changes are causing the slowdown Is it editing code, or changing UI components in the Winforms designer Are you doing these edits while debugging
    Are you able to do edits in the file while the CPU is at 100%

    Thanks,

    Karen



  • Stefan W.

    I have exactly the same problem with large c# solutions. Once you get over a certain threshold of projects the solution is sooo slow it's painful.

  • Kjartan

    I found by turning off the navigation bar option I got a 100 times improvement.

    Tools -> Options -> Text Editor -> All Languages -> General

    then check off Navigation Bar

    funny thing is the option does appear to to do anything other than slow down the editor to a crawl.


  • tonyheupel

    Yeah I forgot to mention that I migrated from VB.NET 1.0 to 2.0 (VS.NET 2002 to VS.NET 2005), not from VB6.

    The code itself didn't need migration except the ASPX pages.

    Maxime Bombardier


  • masuar

    I was encouraged by your answer, but it seems that this option is already checked.

    By the way I just ran the Upgrade assessment tool on my code base.

    This project has 173,000 lines of which 93,000 are code.


  • VS 2005 seems unusable for large VB converted project. How do I turn off the background compiler.