Resolve a performance problem with Visual Assist

When a solution is loaded for the first time, Visual Assist parses all source files associated with your solution. The background parsing occurs while you edit; VA parsing messages appear in the status bar. Features of Visual Assist becomes available after the full parsing completes.

When a solution is subsequently loaded, Visual Assist reads symbol information from fast-access databases it built during full parsing. Only files modified outside the IDE since the last solution load are parsed. Features of Visual Assist are available immediately after the solution is loaded.

During edit, Visual Assist parses current files as necessary. Response of the IDE should be immediate.

Full parsing is necessary again after:

  • installing a different build of Visual Assist
  • pressing Rebuild in the options dialog of Visual Assist

Features of Visual Assist are unavailable when editing files larger than ~5 MB.

If you experience unusually poor performance, try the following based on the circumstances of your problem.

All performance problems

Install the latest build of Visual Assist, even if that build is outside of your software maintenance. If the build fixes your performance problem, you have the choice of reverting to the newest build you are qualified to run or obtaining a current maintenance and support plan and keeping the latest build.

Opening of First Editor Window is Slow

Windows 10 Version 1709 (Fall Creators Update) with Visual Assist build 2238 or older

Windows Defender in the Fall Creators Update (FCU) causes Visual Studio to open its first editor window slowly. You can speed up the opening to pre-FCU levels by updating to Visual Assist build 2248 or newer, or by disabling Control Flow Guard (CFG) for Visual Studio.

CPUs are excessively busy during parse of a solution

If CPUs are 100% busy while VA parsing messages appear in your status bar, run parser threads of Visual Assist with below-normal priority or limit the number of CPUs used by Visual Assist during parsing. Both settings require restart of your IDE. If you want to limit CPU use without restarting your IDE, restrict parsing to a single thread before opening a solution.

Features in Visual Assist are delayed after solution load

If features in Visual Assist are delayed after subsequent loading of a solution, try disabling default Intellisense, restarting your IDE, and reloading your solution.

IDE is blocked during solution load

If the IDE is blocked during solution load with a message box that contains "Visual Assist" and "Reading solution projects", disable enumeration of project references.

Poor response when editing very large files

If Visual Assist is slow to respond in very large files, confirm the default threshold in the registry is reasonable. Consider changing the threshold or editing large files without Visual Assist.

Poor response when editing normal files

If Visual Assist is slow to respond in typical files, try disabling default Intellisense. Responsiveness should return immediately. If disabling of default Intellisense does not resolve the problem, try isolating poor response to the editing of specific code, file, or 3rd party library.

Performance problems you cannot resolve

If you try the applicable suggestions and still experience poor performance, contact [email protected] for assistance. Provide the following:

  1. Version information copied from VAssistX | Help | About.
  2. Definition of poor performance and the circumstances of its occurrence. For example, does it occur during load of a solution or when typing. And, is the problem applicable to a single or all solutions.
  3. Number of projects in your solution.
  4. Description of networks that might transport related resources, e.g., source code, the IDE, the display, or Visual Assist.
  5. Debug logs.

Visual Studio 2017

Check "Help | Manage Visual Studio Performance" to determine if Visual Assist is degrading performance of startup, solution load, or overall responsiveness. If so, report the message to [email protected].