Skip to content

Timing and performance data

Kirill Osenkov edited this page Nov 26, 2023 · 5 revisions

The log viewer has several features to display the timing data to aid with build performance investigations.

Append $time to the search query for tasks, targets or projects to sort the results by duration descending:

image

You can also append $start and/or $end to show start or end times of results: image

The log displays the top 10 most expensive tasks (total duration):

image

Hovering over each target or task duration also shows the start time and end time:

image

You can also right-click on a project, target or task and choose "Show time and duration": image

The timeline view provides a birds-eye overview of most expensive targets and tasks. For multicore builds it displays each build node in a separate column. In the timeline view the time flows from top to bottom and each column is an MSBuild worker node process.

image

There's also a Tracing tab where time flows from left to right: image

Press SPACE or double-click on the Detailed Summary node to get the full text output of the MSBuild Detailed Summary log: image

You can specify start<"2023-11-23 11:30:54.579", you can use start or end to filter for projects, targets and tasks that start or end before (<) or after (>) the given timestamp. The timestamp needs to be in quotes. You can get the timestamp by right-clicking a project, target or task and choosing "Show time and duration" from the context menu.