[Tracking] Overhead of evaluation is too high for design-time builds
See original GitHub issueThis is the evaluation equivalent of https://github.com/dotnet/sdk/issues/1496.
This solution contains a mix of .NET Framework and .NET Standard projects with globs turned off.
Pass | File | Line # | Expression | Inc (ms) | Inc (%) | Exc (ms) | Exc (%) | # | Bug |
---|---|---|---|---|---|---|---|---|---|
Total Evaluation | 6159 | 100% | 54 | 0.9% | |||||
Properties (Pass 1) | 3312 | 53.8% | 9 | 0.1% | |||||
ItemDefinitionGroup (Pass 2) | 14 | 0.2% | 2 | 0% | |||||
Items (Pass 3) | 566 | 9.2% | 24 | 0.4% | |||||
Lazy Items (Pass 3.1) | 1826 | 29.6% | 158 | 2.6% | |||||
UsingTasks (Pass 4) | 59 | 1% | 59 | 1% | |||||
Targets (Pass 5) | 327 | 5.3% | 208 | 3.4% | |||||
Lazy Items (Pass 3.1) | ~NETStandard.Library.NETFramework.targets~ | 3 | ~<_NETStandardLibraryNETFrameworkReference Include="$(MSBuildThisFileDirectory)\ref\*.dll" Exclude="@... ~ |
~596~ | ~9.7%~ | ~596~ | ~9.7%~ | ~126~ | Replaced by ImplicitlyExpandNETStandardFacades |
Lazy Items (Pass 3.1) | ~NETStandard.Library.NETFramework.targets~ | 6 | ~<_NETStandardLibraryNETFrameworkLib Include="$(MSBuildThisFileDirectory)\lib\*.dll" Exclude="@(_NETS... ~ |
~547~ | ~8.9%~ | ~547~ | ~8.9%~ | ~126~ | Replaced by ImplicitlyExpandNETStandardFacades |
Lazy Items (Pass 3.1) | ~NETStandard.Library.targets~ | ~7~ | ~<Reference Condition="'$(_NetStandardLibraryRefPath)' != ''" Include="$(_NetStandardLibraryRefPath)*... ~ |
~312~ | ~5.1%~ | ~279~ | ~4.5%~ | ~43~ | ~https://github.com/dotnet/standard/issues/442~ |
Properties (Pass 1) | Microsoft.Common.CurrentVersion.targets | 114 | <Import Project="$(CommonTargetsPath)" /> |
2078 | 33.7% | 119 | 1.9% | 223 | |
Properties (Pass 1) | Microsoft.Managed.DesignTime.targets | 46 | <ManagedXamlResourcesDirectory Condition="!Exists('$(ManagedXamlResourcesDirectory)')" >$(MSBuildThi... |
118 | 1.9% | 115 | 1.9% | 223 | ~https://github.com/dotnet/project-system/issues/2823~ https://github.com/Microsoft/msbuild/issues/2217 |
Properties (Pass 1) | ~Microsoft.Common.CurrentVersion.targets~ | 83 | ~<FrameworkPathOverride Condition="'$(FrameworkPathOverride)' == ''" >$([Microsoft.Build.Utilities.To... ~ |
~77~ | ~1.2%~ | ~76~ | ~1.2%~ | ~223~ | https://github.com/Microsoft/msbuild/issues/2518 |
Properties (Pass 1) | Microsoft.CSharp.CurrentVersion.targets | 27 | <Import Project="$(MSBuildUserExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.CSharp.targets\Import... |
218 | 3.5% | 66 | 1.1% | 223 | |
Properties (Pass 1) | Microsoft.Common.props | 77 | <Import Project="$(MSBuildUserExtensionsPath)\$(MSBuildToolsVersion)\Imports\Microsoft.Common.props\... |
106 | 1.7% | 60 | 1% | 223 | |
Properties (Pass 1) | Microsoft.Common.CurrentVersion.targets | 5821 | <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.targets\ImportAfte... |
645 | 10.5% | 57 | 0.9% | 223 | |
Properties (Pass 1) | Microsoft.Common.CurrentVersion.targets | 92 | <TargetPlatformSdkPath Condition="'$(TargetPlatformSdkPath)' == ''" >$([Microsoft.Build.Utilities.To... |
54 | 0.9% | 54 | 0.9% | 223 | https://github.com/Microsoft/msbuild/issues/2519 |
Properties (Pass 1) | Microsoft.Common.props | 78 | <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Imports\Microsoft.Common.props\Impo... |
80 | 1.3% | 48 | 0.8% | 223 | |
Lazy Items (Pass 3.1) | Microsoft.Common.CurrentVersion.targets | 369 | <_DebugSymbolsOutputPath Include="@(_DebugSymbolsIntermediatePath->'$(OutDir)%(Filename)%(Extensi... |
44 | 0.7% | 44 | 0.7% | 223 | https://github.com/Microsoft/msbuild/issues/2520 |
Properties (Pass 1) | Microsoft.NET.Build.Extensions.targets | 18 | <_TargetFrameworkVersionWithoutV Condition="$(TargetFrameworkVersion.StartsWith('v'))" >$(TargetFram... |
45 | 0.7% | 42 | 0.7% | 223 | ~https://github.com/dotnet/sdk/issues/1587~ https://github.com/Microsoft/msbuild/issues/2217 |
Properties (Pass 1) | Microsoft.Common.props | 63 | <Import Project="$(MSBuildProjectExtensionsPath)$(MSBuildProjectFile).*.props" Condition="'$(ImportP... |
182 | 3% | 39 | 0.6% | 223 | |
Properties (Pass 1) | Microsoft.Common.targets | 127 | <Import Project="$(MSBuildProjectExtensionsPath)$(MSBuildProjectFile).*.targets" Condition="'$(Impor... |
243 | 4% | 38 | 0.6% | 223 | |
Lazy Items (Pass 3.1) | ~NETStandard.Library.targets~ | ~12~ | ~Condition="'%(FileName)' != 'netstandard'") ~ |
~33~ | ~0.5%~ | ~33~ | ~0.5%~ | ~43~ | ~https://github.com/dotnet/standard/issues/494~ |
Properties (Pass 1) | Microsoft.Common.props | 28 | <_DirectoryBuildPropsBasePath Condition="'$(_DirectoryBuildPropsBasePath)' == ''" >$([MSBuild]::GetD... |
26 | 0.4% | 26 | 0.4% | 223 | https://github.com/Microsoft/msbuild/issues/2521 |
Properties (Pass 1) | Microsoft.Common.CurrentVersion.targets | 99 | <TargetPlatformDisplayName Condition="'$(TargetPlatformDisplayName)' == ''" >$([Microsoft.Build.Util... |
25 | 0.4% | 24 | 0.4% | 223 | ~https://github.com/Microsoft/msbuild/issues/2522~ https://github.com/Microsoft/msbuild/issues/2519 |
Items (Pass 3) | Microsoft.Managed.DesignTime.targets | 98 | <ItemGroup Condition="'$(DefineCommonManagedItemSchemas)' == 'true'" ><PropertyPageSchema Include="$... |
81 | 1.3% | 22 | 0.4% | 223 | https://github.com/dotnet/project-system/issues/2825 |
Items (Pass 3) | Microsoft.Common.CurrentVersion.targets | 369 | <_DebugSymbolsOutputPath Include="@(_DebugSymbolsIntermediatePath->'$(OutDir)%(Filename)%(Extensi... |
22 | 0.4% | 22 | 0.4% | 223 | https://github.com/Microsoft/msbuild/issues/2520 |
Properties (Pass 1) | Microsoft.Common.targets | 139 | <_DirectoryBuildTargetsBasePath Condition="'$(_DirectoryBuildTargetsBasePath)' == ''" >$([MSBuild]::... |
21 | 0.3% | 21 | 0.3% | 223 | https://github.com/Microsoft/msbuild/issues/2521 |
Properties (Pass 1) | Microsoft.Common.CurrentVersion.targets | 91 | <TargetPlatformSdkPath Condition="'$(TargetPlatformSdkPath)' == '' and '$(TargetPlatformIdentifier)'... |
21 | 0.3% | 19 | 0.3% | 223 | https://github.com/Microsoft/msbuild/issues/2519 |
Properties (Pass 1) | Microsoft.NET.TargetFrameworkInference.targets | 171 | <PropertyGroup Condition="'$(AppendTargetFrameworkToOutputPath)' == 'true' and '$(TargetFramework)' ... |
20 | 0.3% | 19 | 0.3% | 43 | |
Properties (Pass 1) | Microsoft.NET.Sdk.DefaultItems.targets | 25 | <PropertyGroup ><!-- Set DefaultItemExcludes property for items that should be excluded from the def... |
20 | 0.3% | 18 | 0.3% | 43 | |
Properties (Pass 1) | Microsoft.NETFramework.CurrentVersion.targets | 129 | Condition="'$(ImportByWildcardAfterMicrosoftNetFrameworkTargets)' == 'true' and exists('C:\Program F... |
36 | 0.6% | 18 | 0.3% | 1 | |
Properties (Pass 1) | Microsoft.CSharp.CurrentVersion.targets | 37 | <PropertyGroup ><MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProj... |
29 | 0.5% | 17 | 0.3% | 223 | |
Items (Pass 3) | Microsoft.Managed.DesignTime.targets | 70 | <ProjectCapability Include="
 AssemblyReferences;
 ... |
16 | 0.3% | 16 | 0.3% | 223 | |
Properties (Pass 1) | Microsoft.Common.CurrentVersion.targets | 1087 | <PropertyGroup ><Framework40Dir>@(_TargetFramework40DirectoryItem)</Framework40Dir><Framework35Dir>@... |
20 | 0.3% | 15 | 0.2% | 223 | |
Properties (Pass 1) | Microsoft.WorkflowBuildExtensions.targets | 25 | <Import Project="$(MSBuildFrameworkToolsPath)\Microsoft.WorkflowBuildExtensions.targets" Condition="... |
90 | 1.5% | 14 | 0.2% | 180 | https://github.com/Microsoft/msbuild/issues/2524 |
Properties (Pass 1) | Microsoft.CSharp.Core.targets | 322 | <Import Project="$(CSharpCoreTargetsPath)" /> |
15 | 0.2% | 14 | 0.2% | 223 | |
Properties (Pass 1) | Microsoft.Common.CurrentVersion.targets | 283 | <TargetDir Condition="'$(OutDir)' != ''" >$([MSBuild]::Escape($([System.IO.Path]::GetFullPath( $([Sy…` |
14 | 0.2% | 14 | 0.2% | 223 | |
Properties (Pass 1) | Microsoft.WinFx.targets | 12 | <Import Project="$(MSBuildFrameworkToolsPath)\Microsoft.WinFx.targets" Condition="Exists('$(MSBuildF... |
55 | 0.9% | 14 | 0.2% | 180 | https://github.com/Microsoft/msbuild/issues/2524 |
Lazy Items (Pass 3.1) | Microsoft.Common.CurrentVersion.targets | 5431 | <DebugSymbolsProjectOutputGroupOutput Include="@(_DebugSymbolsIntermediatePath->'%(FullPath)')" >... |
13 | 0.2% | 13 | 0.2% | 223 | |
Properties (Pass 1) | Microsoft.CSharp.CurrentVersion.targets | 168 | <Import Project="$(CSharpTargetsPath)" /> |
2732 | 44.4% | 13 | 0.2% | 223 | |
Properties (Pass 1) | ~Microsoft.CodeAnalysis.targets~ | ~93 | ~<PropertyGroup ><!-- FxCopDir must be considered for backwards compatibility with the Visual Studio ... ~ |
~87~ | ~1.4%~ | ~12~ | ~0.2%~ | ~223~ | https://github.com/dotnet/roslyn/issues/22110 |
Properties (Pass 1) | Microsoft.Common.CurrentVersion.targets | 3182 | <TargetFrameworkMonikerAssemblyAttributesPath Condition="'$(TargetFrameworkMonikerAssemblyAttributes... |
12 | 0.2% | 12 | 0.2% | 223 | |
Properties (Pass 1) | Microsoft.CodeAnalysis.targets | 5774 | <Import Project="$(CodeAnalysisTargets)" Condition="Exists('$(CodeAnalysisTargets)')" /> |
215 | 3.5% | 12 | 0.2% | 223 | https://github.com/dotnet/roslyn/issues/22111 |
Properties (Pass 1) | Microsoft.NET.Build.Extensions.targets | 15 | <MSBuildAllProjects >$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects> |
11 | 0.2% | 11 | 0.2% | 223 | |
Properties (Pass 1) | Microsoft.Common.props | 19 | <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="... |
213 | 3.5% | 11 | 0.2% | 113 | |
Items (Pass 3) | Microsoft.Common.CurrentVersion.targets | 354 | <ItemGroup ><IntermediateAssembly Include="$(IntermediateOutputPath)$(TargetName)$(TargetExt)" /><Fi... |
31 | 0.5% | 11 | 0.2% | 223 | |
Properties (Pass 1) | Microsoft.Common.CurrentVersion.targets | 5817 | <Import Project="$(MSBuildToolsPath)\Microsoft.Data.Entity.targets" Condition="'$(TargetFrameworkIde... |
13 | 0.2% | 11 | 0.2% | 223 | https://github.com/Microsoft/msbuild/issues/2524 |
Items (Pass 3) | Microsoft.Common.CurrentVersion.targets | 357 | <CopyUpToDateMarker Include="$([MSBuild]::NormalizePath('$(MSBuildProjectDirectory)', '$(Intermediat... |
10 | 0.2% | 10 | 0.2% | 223 | |
Properties (Pass 1) | Microsoft.PackageDependencyResolution.targets | 23 | <MSBuildAllProjects >$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects> |
10 | 0.2% | 10 | 0.2% | 43 | |
Items (Pass 3) | Microsoft.Managed.DesignTime.targets | 126 | <PropertyPageSchema Include="$(ManagedXamlResourcesDirectory)EmbeddedResource.xaml" ><Context>File;B... |
10 | 0.2% | 10 | 0.2% | 223 | |
Properties (Pass 1) | Microsoft.QualityTools.Testing.Fakes.targets | 10 | <PropertyGroup ><FakesBinPath Condition="$(FakesBinPath) == ''">$(MSBuildProjectDirectory)</FakesBin... |
29 | 0.5% | 10 | 0.2% | 223 | |
Properties (Pass 1) | Microsoft.Common.CurrentVersion.targets | 851 | <PropertyGroup ><_ProjectDefaultTargets Condition="'$(MSBuildProjectDefaultTargets)' != ''">$(MSBuil... |
15 | 0.2% | 10 | 0.2% | 223 | |
Properties (Pass 1) | Microsoft.Xaml.targets | 19 | <Import Project="$(MSBuildFrameworkToolsPath)\Microsoft.Xaml.targets" Condition="Exists('$(MSBuildFr... |
107 | 1.7% | 10 | 0.2% | 180 | https://github.com/Microsoft/msbuild/issues/2524 |
Items (Pass 3) | Microsoft.Managed.DesignTime.targets | 230 | <PropertyPageSchema Include="$(ManagedXamlResourcesDirectory)DotNetCliToolReference.xaml" ><Context>... |
10 | 0.2% | 10 | 0.2% | 223 | |
Properties (Pass 1) | Projectcsproj.nuget.g.props | 16 | Condition="Exists('$(NuGetPackageRoot)netstandard.library.netframework\2.0.0-preview2-25405-01\build... |
10 | 0.2% | 10 | 0.2% | 1 | |
Properties (Pass 1) | Microsoft.Common.CurrentVersion.targets | 25 | Condition="'$(ImportUserLocationsByWildcardAfterMicrosoftCommonTargets)' == ''") |
10 | 0.2% | 10 | 0.2% | 223 | |
Properties (Pass 1) | Project.csproj | 0 | <Import Project="Sdk.props" Sdk="Microsoft.NET.Sdk" /> |
35 | 0.6% | 9 | 0.2% | 1 | |
Properties (Pass 1) | Microsoft.CodeAnalysis.targets | 24 | <PropertyGroup ><CodeAnalysisStaticAnalysisDirectory Condition="'$(CodeAnalysisStaticAnalysisDirecto... |
60 | 1% | 9 | 0.2% | 223 | https://github.com/dotnet/roslyn/issues/22110 |
Items (Pass 3) | Microsoft.Common.CurrentVersion.targets | 368 | Condition="'$(OutputType)' != 'winmdobj' and '@(_DebugSymbolsIntermediatePath)' == ''") |
9 | 0.2% | 9 | 0.2% | 223 | |
Properties (Pass 1) | Microsoft.CSharp.CurrentVersion.targets | 332 | <Import Project="$(MSBuildToolsPath)\Microsoft.ServiceModel.targets" Condition="('$(TargetFrameworkV... |
17 | 0.3% | 3 | 0% | 223 | https://github.com/Microsoft/msbuild/issues/2524 |
Evaluation Time (Ordered by Exclusive) Evaluation Time (Ordered by Inclusive)
Issue Analytics
- State:
- Created 6 years ago
- Comments:6 (6 by maintainers)
Top Results From Across the Web
Project Evaluations Count Too! - Panopticon Central
And, unlike design-time builds, there is no cache that Visual Studio maintains of project evaluation results, so you pay the cost every time ......
Read more >A Joint Benchmark-Analytic Approach For Design-Time ...
Verifying that a software system shows certain nonYfunctional properties is a primary concern for cloud applications. Given the heterogeneous technology ...
Read more >Performance considerations for EF4, EF5, and EF6
View generation: Potentially very high but cached - Parameter evaluation: Low - Query translation: Medium but cached
Read more >Continuous and Proactive Software Architecture Evaluation
A continuous architecture evaluation that systematically assesses and intertwines design-time and run-time decisions is thus necessary. This ...
Read more >Design Time Evaluation for Side-Channel Attack Resistant ...
This dissertation addresses design time evaluation of SCA security for ... running at high clock frequencies, at the order of GHz, require very...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
I’ve pushed the evaluation profiler into an experimental branch of MSBuild and written up instructions on how to build and use it: https://github.com/Microsoft/msbuild/blob/exp/EvaluationProfiler/documentation/evaluation-profiling.md
Closing because there are no linked SDK issues remaining.