-
Notifications
You must be signed in to change notification settings - Fork 4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
"Perform editor feature analysis in external process" should likely be turned on by default. #26076
Comments
tagging @dotnet/roslyn-ide @kuhlenh @jinujoseph Any reason not to do this at this point? The A/B test helped address any concerns we had about potential instability or possible negative perf impact. |
Can I get some more information on what this does and how it improves performance? |
tagging @dotnet/roslyn-ide @kuhlenh @jinujoseph Any reason not to do this at this point? The A/B test helped address any concerns we had about potential instability or possible negative perf impact. |
The feature works by making 'global' IDE operations run in a separate process. These include operations like:
Basically, features that need knowledge of all the semantic information in your solution. By moving these operations into a separate process it greatly reduces load inside VS. Specifically, many of these feature are quite expensive to perform, both in CPU and in terms of memory allocations. The latter is a particularly large problem as it bogs down the single GC system inside VS. So, if you're doing these features in VS, with a large solution, you can often get slowdowns and latency spikes as the GC has to pause things to deal with the enormous pressure. By moving out of proc the VS GC no longer has to worry about that, and things like latency spikes drop by quite a bit. |
Looks like someone forgot to turn this on. Could it have anything to do with this: https://developercommunity.visualstudio.com/content/problem/532880/live-code-analysis-slow.html I also find it amazing that the Live Analysis continues to run even after closing all solutions. |
These are unrelated features. The issue i opened was about movin certain features (like find-references/rename/navigate-to/etc.) out of process. Live Analysis is not included in that bucket. If you are running into problems there please open another bug. This was has been closed appropriately and no further work will be done here based on reports about other features. Thanks! |
@CyrusNajmabadi The screenshot displayed above has "Perform editor feature analysis in external process". I ask because this option is no longer available, and now devenv.exe consumes multiple cores worth of processing. The freezing has become so bad in version 16.2 that I ended up having to to isolate and suspend the thread in devenv.exe running the analysis, just so I could work. |
@Brain2000 As i mentioned, the above option was solely for a subset of features that i created. All those features now run out of proc and do not have an impact on the CPU usage of VS. The option is no longer available because those features are now never in VS anymore.
This is unrelated to the features i wrote or this specific issue. I would recommend filing performance bugs against VS.
As i mentioned above, please file another issue on this. The option this issue refers to never ahd any impact on things like 'live analysis'. |
@Brain2000 I would really appreciate it if you could follow the directions here and record a trace of the problem you are seeing. |
@mavasani this looks like another instance of the runaway dispose analyzer issue |
this is in reference to this feature:
This feature was A/B tested probably around a year ago at this point. @kuhlenh has the details. All data was extremely good. It showed substantial improvements in some areas, and no regressions anywhere.
I think this can become non-"experimental" at this point and can just become the default.
The text was updated successfully, but these errors were encountered: