-
Notifications
You must be signed in to change notification settings - Fork 1.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
MSBuild evaluation for Netcore is 3x slower than Netframework causing slow solution load times #6034
Comments
Team Triage: first step: need to identify how this issue aligns with the existing user story. |
@arkalyanms, you're right, I've closed #3210, thank you! |
On a more recent pass with the latest evaluation fixes, there were 2 other issues that started showing - #3039 and #5467. @AndyGerlicher #3039 seems to manifest when using the PRE cache. Do you know if using MSBUILDUSESIMPLEPROJECTROOTELEMENTCACHECONCURRENCY viable given the lock bug? |
All child issues are closed. Thank you @arkalyanms for driving this effort! I have opened #6977 to track further improvements now enabled by referencing Microsoft.IO.Redist. It will be tackled as part of a different epic. |
@arkalyanms good point, I have opened #6987. Rainer already has a draft PR out addressing the repeated SDK resolver enumerations. |
Issue Description
In an effort to improve solution load for netcore projects, I have analyzed MSBuild evaluation times between netcore and netframework evaluation times and find that netcore is around 3x slower in evaluations than netframework. Some of the issues listed below smell like bugs and other need more profiling to understand the problem better. Cutting this Issue to track after meeting with Rainer and team and Ladi, Alina and Roman.
Steps to Reproduce
Measuring conditions
Data
\\SLNATSCALE002\CoreVsFramework
shared with Ladi and Alina.Current State of Evaluation
Evaluation phase split (400 projects)
Breakdown of issues
Full analysis at MSBuild-performance-improvements and MSBuild Performance.docx.
Versions & Configurations
VS version = 16.9.0 Preview 4.0 [30912.315.main]
MSBuild version = 16.9.0.6202
Attach a binlog
Traces and solutions are at \SLNATSCALE002\CoreVsFramework. Numbers are consistent across different runs.
@ladipro and @rainersigwald FYI.
The text was updated successfully, but these errors were encountered: