Skip to content
afba4ef
Compare
Choose a tag to compare

Announcing the release of PerfView and TraceEvent 3.0!

This release contains many bug fixes, improvements, and changes to default behavior based on feedback. Some of the highlights are:

  • By default, all ETLX files are 64-bit and no longer have a limit of 20 million events.
  • PerfView.exe is now 64-bit by default. PerfView64.exe has been removed from the build.
  • The default grouping for all views is now [group module entries] instead of [Just My App] to help eliminate confusion when interpreting stacks.
  • The default fold percentage of 1% has been removed to avoid situations where CPU time is so heavily spread that most CPU samples show up in the Process node when looking at stacks.
  • Thread time views from nettrace files will now automatically fold UNMANAGED_CODE_TIME and CPU by default to help eliminate confusion when these values don’t properly represent the workload.
  • Add a new Options menu in the UI for user-specific configuration options.

With this release, there will be no future releases of PerfView 2.0.x. Users should expect that future improvements and fixes will be part of 3.x releases going forward.

f570067
Compare
Choose a tag to compare

Roll-up through 2022/04/11.

  • GUI warning pop-up if you attempt to close PerfView during rundown, merge, or zip.
  • Fix GC hole in nettrace file processing.
  • Fix unintentional blocking when streaming from a .NET Core EventPipe session.
  • Remove superfluous ETW flush command when rotating an ETW session file name via TraceEventSession.SetFileName.
  • Ignore the manifest definition for Microsoft-Windows-DotNETRuntime that is emitted into the event stream by .NET 6+ processes, which results in duplicate dispatch of these events.
f570067
Compare
Choose a tag to compare

Roll-up through 2022/04/11.

  • GUI warning pop-up if you attempt to close PerfView during rundown, merge, or zip.
  • Fix GC hole in nettrace file processing.
  • Fix unintentional blocking when streaming from a .NET Core EventPipe session.
  • Remove superfluous ETW flush command when rotating an ETW session file name via TraceEventSession.SetFileName.
  • Ignore the manifest definition for Microsoft-Windows-DotNETRuntime that is emitted into the event stream by .NET 6+ processes, which results in duplicate dispatch of these events.
Compare
Choose a tag to compare
Pre-release

Action Requested: Please try this release and provide your feedback as issues in this repo, so that we can address any bugs and take your feedback into account on changes to the defaults. Please be sure start your issue title with "[PerfView 3.0]".

Fixes and Improvements:

  • Fix missing changes to turn on some of the 64-bit file format improvements.
  • Remove missed truncation code path for ETLX file generation in PerfView.
  • Update progress text in PerfView when converting an ETL to an ETLX file.
  • Update and simplify PerfView view group names.
Compare
Choose a tag to compare
Pre-release

Announcing the first preview release of PerfView and TraceEvent 3.0!

Action Requested: Please try this release and provide your feedback as issues in this repo, so that we can address any bugs and take your feedback into account on changes to the defaults. Please be sure start your issue title with "[PerfView 3.0]".

The goal of this and future previews is to allow for testing and feedback prior to an official stable release. There is not a set number of preview releases - this will be determined by feedback and bugs filed.

The main reason for incrementing the major version is that there are some changes that will break backwards compatibility:

  • By default, all ETLX files are 64-bit and no longer have a limit of 20 million events.
  • PerfView.exe is now 64-bit by default and PerfView64.exe has been removed from the build.

In addition, there are changes to the defaults for some of the views in PerfView. For example:

  • The default grouping for all views is now [group module entries] instead of [Just My App] to help eliminate confusion when interpreting stacks.
  • The default fold percentage of 1% has been removed to avoid situations where CPU time is so heavily spread that most CPU samples show up in the Process node when looking at stacks.
  • Thread time views from nettrace files will now automatically fold UNMANAGED_CODE_TIME and CPU by default to help eliminate confusion when these values don’t properly represent the workload.

And of course, there are many other small fixes and improvements. Also notice that going forward releases of PerfView and TraceEvent will be merged together, rather than being posted as separate releases.

If you're interested in contributing to Perfview 3.0, please target your PR to the feature/perfview-3.0 branch.

23f5537
Compare
Choose a tag to compare

Roll-up through 2022/03/01.

  • Fix an issue that prevented symbol resolution in 64-bit processes.
23f5537
Compare
Choose a tag to compare

Roll-up through 2022/03/01.

  • Fix an issue that prevented symbol resolution in 64-bit processes.
326bb0d
Compare
Choose a tag to compare

Roll-up through 2022/02/28.

  • Add native arm64 support for TraceEvent.
  • Fixes /MinSecForTrigger for 64-bit processes to honor a non-default value.
  • Misc UI fixes.
  • Symbols for official PerfView and TraceEvent builds are now archived on the official Microsoft Symbol Server: https://msdl.microsoft.com/download/symbols.
326bb0d
Compare
Choose a tag to compare

Roll-up through 2022/02/28.

  • Add native arm64 support for TraceEvent.
  • Fixes /MinSecForTrigger for 64-bit processes to honor a non-default value.
  • Misc UI fixes.
  • Symbols for official PerfView and TraceEvent builds are now archived on the official Microsoft Symbol Server: https://msdl.microsoft.com/download/symbols.
2a9d7d8
Compare
Choose a tag to compare

Roll-up through 2021/11/09.

  • Fixes to path handling for files inside of Windows containers.
  • Expose additional source line information.
  • Provide a mechanism to override SupportFilesDir for SAW deployment of PerfView.