Improving Performance by Changing the Visual Experience

Menu:  Tools -> Options -> Environment -> General -> Visual Experience
Versions:  2010
Published:  6/22/2010
Code:  vstipEnv0017

 

Visual Studio 2010 automatically adjusts the Visual Studio visual experience depending on the situation. For example, the use of gradients and animations is usually eliminated (or reduced) when running Visual Studio over Remote Desktop or in a virtual machine environment. It also makes use of hardware graphics acceleration when it is available.

 

In some situations, you can improve your Visual Studio performance by changing your Visual Experience.  To change these settings just go to Tools -> Options -> Environment -> General -> Visual Experience:

image

 

Uncheck the "Automatically adjust visual experience based on client performance" checkbox:

image

 

NOTE:  As you work with these options, the message at the bottom will not change until you click "OK" to commit the changes you have made.

 

Let's review what each of these options does:

Enable rich client visual experience - This options gives you gradients and animations (aka "eye candy") for things like sliding tool windows, etc.  If you leave this option checked it will use these rich animations in ALL scenarios including remote sessions.  This option should be turned off to usually get a bump in performance. 

 

Use hardware graphics acceleration if possible - This option will let you decide if WPF hardware acceleration is something you want.  Usually you will clearly notice a change in performance when you turn this on or off.

 

NOTE:  If you have a system that isn't hurting by having the animations and gradients on then there is nothing wrong with a little eye candy so this is really for those folks who are having a issues in their VS experience either locally or remotely. 

 

Okay, now that you have played with the options a bit you may be wondering if there is a way to actually SEE how the performance is doing.  Fortunately you can!  There is a tool that allows you to measure WPF performance called WPFPerf included in the Windows SDK.  You can find a great article on how to use it here:

https://windowsclient.net/wpf/perf/wpf-perf-tool.aspx

 

Also, when using VS2010 over remote sessions, you should definitely read this article on how to dramatically improve performance over RDP:

https://blogs.msdn.com/b/jgoldb/archive/2010/02/27/optimizing-visual-studio-2010-and-wpf-applications-for-remote-desktop.aspx