A 50% performance improvement isn't something to be happy about? How quickly should it be doing the loading of that specific set of files?
A 50% performance improvement isn't something to be happy about? How quickly should it be doing the loading of that specific set of files?
Sub 500ms? Read the solution, read each project file, read the first level of file and folder names in each project, then show the solution explorer. Anything else can go in a background thread which doesn't block building, running, or opening individual files.
I would like to see where the other 29,500ms are going.
Visual Studio should read in all the files, restoring to open the ones I had open last time and allow me to start editing immediately while still loading the rest in the background. Also, Intellisense data should be cached, because if the load time of 30 seconds is because it's prepping that each time, that's a waste.
It's already done this for a few versions -- a feature named 'asynchronous solution load'. You're able to open a file and start editing while the X hundreds of projects load. However if you do a Navigate To, Find In Files, etc. among other operations, you'll get the modal progress bar because those operations require having the entire solution parsed. But editing and other simple operations are available while the projects are loading (which takes up the bulk of the time).
edit: more info about asynchronous solution load: https://blogs.msdn.microsoft.com/visualstudio/2013/10/14/asy...