Perfview Versions Save

PerfView is a CPU and memory performance-analysis tool

v3.1.9

2 months ago

Roll-up through 2024/03/07.

  • Provide an option in PerfView to enable/disable truncation of the full raw event in the Events view when selecting “Dump raw event”.
  • Fix the TraceEvent nuspec file to include all dependencies.
  • Trim whitespace when parsing /Providers.
  • Fix live session decoding of self-describing events.

v3.1.8

3 months ago

Roll-up through 2024/01/31.

  • Ensure PerfView.exe exits after closing the main window.
  • Add ETWTraceEventSource.DispatchBehavior to control whether the TaskID is fetched from the event header, or consumed from the hardcoded value in the parser. Used for scenarios where the TaskID is modified by a trace processing tool or when the TaskID otherwise varies.
  • Fix surfacing of RelatedActivityID in real-time sessions.
  • Stabilize root names for heap snapshots.

v3.1.7

5 months ago

Roll-up through 2023/12/05.

  • Properly setting the process.Log to be used by the GC to discern whether the process is running with SVR GC Threads
  • Fix CTF structure alignment issue
  • Show Object Size in for GCAllocationTick Events in Any Stacks
  • Implementation of GC Dynamic Events
  • Capture the Process Name from EventPipe Traces
  • Fixes for Process Dump to GC Dump Conversion

v3.1.6

6 months ago

Roll-up through 2023/10/20.

  • Harden TraceEventSession.ProviderNameToGuid
  • Fixed calculation of Alloc MB / Pause Time in GC
  • New version of Microsoft.Diagnostics.Tracing.TraceEvent.SupportFiles
  • Protect Initialization of TraceEventSession Provider Lists

v3.1.5

8 months ago

Roll-up through 2023/08/24.

  • Extensibility support for CtfTraceEventSource mappings. This is to enable custom parsers to register events with CtfTraceEventSource which operates off of event provider/name instead of ETW metadata.
  • Fix computation of background GC pause times.

v3.1.4

9 months ago

Roll-up through 2023/07/31.

  • Update goto source functionality to display both inclusive and exclusive costs. Previously only inclusive costs were shown.
  • Update LockCreated and ContentionStart_V2 events to allow for tracking of lock creation and acquisition of locks by thread.
  • Support for uncompressed embedded source files in PDBs.
  • Support for basic authentication when authenticating to symbol servers.
  • Improvements to the Events view to launch maximized and to increase the number of allowed columns.
  • Various security improvements including building with banned.h (avoid usage of unsafe native APIs), enabling additional binary hardening settings, and switching to secure random number generation.

v3.1.3

1 year ago

Roll-up through 2023/05/16.

  • Make Linux performance trace parsing more robust.
  • Add support for capturing thread time data via perfcollect within containers.
  • Add support for new instrumented code types generated by the .NET JIT.
  • Fix bug where rundown is much more expensive than it should be.
  • Address a stack overflow bug in TraceEventSession.GetActiveSessionNames.
  • Allow users to specify a rundown file size limit. This is useful in environments with many processes where rundown takes a very long time.

v3.1.2

1 year ago

Roll-up through 2023/04/12.

  • Fixes a bug that causes symbols in stack views to not resolve.

v3.1.1

1 year ago

Roll-up through 2023/04/04.

  • Fixes a bug that resulted in significant degradation of performance in some apps due to very verbose events being enabled.
  • Only refresh stack views when the filter/grouping criteria has changed.

v3.1.0

1 year ago

Roll-up through 2023/03/31.

  • Standardize all TraceEvent libraries to compile against netstandard2.0 only.
  • Switch FastSerialization and TraceEvent projects to produce portable PDBs instead of Windows PDBs.
  • Refactor PerfView dependencies to make them more explicit.
  • Enable certificate revocation when contacting https endpoints.
  • Convert ForceGC functionality to use built-in ETW capabilities and remove ICorDebug code from HeapDump.
  • Cache the DIA class factory used for native symbol lookup.
  • Dispose cached PDBs properly so that they aren’t locked on disk after use.
  • Fix parsing of CTF metadata documents with out-of-order elements in LTTng traces.
  • Several internal and surface area changes to Automated Trace Analysis capabilities.
  • Enable opening of portable PDBs when running TraceEvent on Linux.
  • Parse and consume new GC events, including a new GCSettings event.
  • Fix native image PDB symbol resolution for diagsession files.
  • Enable rundown event collection for GC and Tiered Compilation settings.
  • Enable PerfView to capture the FileVersion fields for all .NET runtime DLLs consumed during trace capture and inject them into the trace.