-
Notifications
You must be signed in to change notification settings - Fork 841
Description
This is a continuation and up to date version of #2107.
There are two project systems used, depending on what you target:
- .NET SDK (Framework or Core or Standard) ---> CPS via the .NET Project system
- .NET Framework (big project files) ---> Legacy F# project system
The latter is used by most solutions in the wild today, but many people are migrating to the .NET SDK for a number of reasons. Both suffer solution load time woes.
SDK style project behavior
From @saul on SDK projects:
I could see that the projects were moving around/refreshing in the Solution Explorer (some projects had 'Dependencies' nodes, some didn't). After about 5 seconds, the UI completely locked up and 5 minutes later I still can't use it (it's 'Not Responding').
The following are upon testing huge/Dense.sln
Legacy project behavior
From @saul for Legacy projects:
Opening Huge/Dense.sln in VS 2015 Update 3 takes 02:00 minutes to get to a fully working editor. After the "Preparing Solution" progress dialog closes, it's basically ready to use.
In Visual Studio 15.7.1 with the nightly tools - same machine, same solution:
00:36 minutes in, the Solution Explorer appears (and is populated). The 'Preparing Solution' dialog stays open.
08:16 minutes in, the 'Preparing Solution' dialog closes so I can now edit the source files. The UI is semi-responsive, syntax colourisation is not updating.
08:53 minutes in, the colourisation is updating in real-time as you'd expect.
I've got a feeling that we've regressed on the 'compute sources and flags' again, and that we're calling this too often on load again.
This is on an 8 core, 32GB RAM server with SSD - I dread to think what this is like on my dual core laptop.