Skip to content

MSBuild has non-trivial overhead due to JIT'ing #2419

Closed
@davkean

Description

@davkean

VisualStudio.15.IntPreview/15.3.0-pre.7.0+26730.0.d15rel

  1. Enlist in Roslyn (assuming e:\Roslyn, otherwise change paths)
  2. Restore.cmd
  3. Run:
msbuild /nologo /m:1 /v:m /clp:Summary;PerformanceSummary /flp:v:d /t:ReportAssetsLogMessages /p:"SolutionFileName=Roslyn.sln;LangName=en-US;Configuration=Debug;LangID=1033;DesignTimeBuild=true;SolutionDir=E:\\roslyn\\;SolutionExt=.sln;BuildingInsideVisualStudio=true;DefineExplicitDefaults=true;Platform=AnyCPU;SolutionPath=E:\\roslyn\\Roslyn.sln;SolutionName=Roslyn;DevEnvDir=C:\Program Files (x86)\Microsoft Visual Studio\Enterprise\Common7\IDE;BuildingProject=false" E:\roslyn\src\Compilers\Core\CodeAnalysisTest\CodeAnalysisTest.csproj
Project Evaluation Performance Summary:
      149 ms  E:\roslyn\src\Compilers\Core\CodeAnalysisTest\CodeAnalysisTest.csproj   1 calls

Project Performance Summary:
      142 ms  E:\roslyn\src\Compilers\Core\CodeAnalysisTest\CodeAnalysisTest.csproj   1 calls
                142 ms  ReportAssetsLogMessages                    1 calls

Target Performance Summary:
      141 ms  ReportAssetsLogMessages                    1 calls

Task Performance Summary:
      134 ms  ReportAssetsLogMessages                    1 calls

Build succeeded.
    0 Warning(s)
    0 Error(s)

In the above, the following binaries are JIT'd consuming 150ms of CPU time, is this expected?

Name JitTimemsec Num Methods IL Size Native Size
TOTAL 155.3 568 48,467 133,499
C:\Program Files (x86)\Microsoft Visual Studio\Preview\Enterprise\MSBuild\15.0\Bin\System.Collections.Immutable.dll 22.7 23 888 2,038
C:\Program Files (x86)\Microsoft Visual Studio\Preview\Enterprise\MSBuild\15.0\Bin\Microsoft.Build.dll 19.8 79 8,163 17,994
C:\Program Files (x86)\Microsoft Visual Studio\Preview\Enterprise\MSBuild\15.0\Bin\Microsoft.Build.Utilities.Core.dll 1.0 2 343 728
C:\Program Files (x86)\Microsoft Visual Studio\Preview\Enterprise\MSBuild\15.0\bin\MSBuild.exe 0.8 1 67 153
C:\Program Files (x86)\Microsoft Visual Studio\Preview\Enterprise\MSBuild\15.0\Bin\Microsoft.Build.Framework.dll 0.5 5 169 335

Metadata

Metadata

Assignees

No one assigned

    Labels

    Area: PerformanceFor considerationUsed for items on the backlog to raise them to the top of that list for discussionPriority:2Work that is important, but not critical for the releasebacklogtriaged

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions