I suggest you ...

Decrease the Memory Footprint

Since Visual Studio is a tool which can be used in so many scenarios (desktop development, web development, game development, etc) and supports so many languages (managed, native, scripting) it seems it is often loading tools and editors which are not needed for the current scenario.

It would be nice to have very fine grain control over what components are loaded at any given time to decrease the memory footprint and increase the performance.

For example, if I just want to edit a C# file in a class library it seems the memory footprint could be much smaller than when doing something like WPF development with a design surface, data access, etc.

1,583 votes
Vote
Sign in
Check!
(thinking…)
Reset
or sign in with
  • facebook
  • google
    Password icon
    I agree to the terms of service
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    lfoustlfoust shared this idea  ·   ·  Flag idea as inappropriate…  ·  Admin →
    Ahmed SaidAhmed Said shared a merged idea: Optimize Memory Usage  ·   · 

    9 comments

    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      I agree to the terms of service
      Signed in as (Sign out)
      Submitting...
      • Kevin AdamsKevin Adams commented  ·   ·  Flag as inappropriate

        Memory is cheap, programmers are not. I'd rather see Microsoft spend there time on other features and bug fixes.

        And also as Victor mentioned, the cost of memory is nothing compared to the cost of VS.

      • David Berg [msft]David Berg [msft] commented  ·   ·  Flag as inappropriate

        Memory takes two forms. Virtual Address Space which for a 32 bit process, like VS, is limited to 2 or 4GB depending on whether your running 32 or 64 bit Windows. Working Set which is the memory actively used. When we run out of Virtual Address Space we crash. When we use too much Working Set we get slow. Buying more memory helps with working set, but not Virtual Address Space. Which memory are people most concerned about?

      • codekaizencodekaizen commented  ·   ·  Flag as inappropriate

        I'd rather have a faster VS than a more parsimonious one; 8GB of RAM is cheap, and can easily run 3+ instances of VS with room to grow. While not being wasteful is commendable, speed often comes at the cost of space.

      • AnonymousAnonymous commented  ·   ·  Flag as inappropriate

        How often have you accidently went to open a web.config on its own to pull out a connection string only to groan as you see the VS splash screen sitting there. There are a couple of things you could do here:
        1: make visual studio smart enough to realise when you're opening a single (non .sln/.csproj) file to spin up a lightweight version of the editor. Something like this got installed as a side effect of putting vwd express on my web server. Its very quick, has intellisense and the 'correct' vs color coding
        2: Throw up a prompt - 'Are you sure you want to use VS for this single file?'
        3: Buy out editplus, replace notepad with it and make it the default text editor. Or at least see how they get so much functionality in a 900k exe :)

      • drweb86drweb86 commented  ·   ·  Flag as inappropriate

        Yea, could you please add performance troubleshoot to visual studio ? Which will analyze usage of visual studio and hardware and will give advices and will not load all unused and rarely used components and tools. Also could you please create something like dump of visual studio, so new instance can be loaded in memory like from hibernate?

      • David NelsonDavid Nelson commented  ·   ·  Flag as inappropriate

        @Alexander, 64-bit VS would dramatically INCREASE the memory footprint. How would that help?

      • David NelsonDavid Nelson commented  ·   ·  Flag as inappropriate

        It is not uncommon for me to have 5 Visual Studio instances open at the same time, all of them using between 1/2 and 1 gig of memory, even when the solutions have only a few projects with a few dozen files each. EVERYTHING in Visual Studio should be modular and only loaded when needed; not just delay-loaded, but actually UNloaded when its not being used.

      Feedback and Knowledge Base