awesome-repositories.com
博客
MCP
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
microsoft avatar

microsoft/perfview

0
View on GitHub↗
4,633 星标·757 分支·C#·mit·8 次浏览channel9.msdn.com/Series/PerfView-Tutorial↗

Perfview

PerfView is a set of integrated profiling and tracing tools built on Windows Event Tracing for Windows (ETW), designed to diagnose CPU, memory, and ETW-based performance issues in .NET applications. It captures ETW events to analyze runtime behavior, CPU usage, and memory allocations, serving as a .NET performance profiler that measures both CPU time and garbage collection events.

The tool distinguishes itself with a diff comparison engine that compares two performance traces side-by-side to highlight changes in method costs and event rates. It renders profiled call stacks as flame graphs where wider bars indicate higher execution time, and provides heap snapshot analysis to identify memory leaks and allocation patterns. PerfView can attach to running processes to collect trace data and detach without terminating the target, and it resolves raw addresses in stack traces to function names and source lines using debug symbols.

Additional capabilities include CPU sampling profiling that attributes CPU time to code paths, object allocation tracing to reduce memory pressure, and detailed analysis of garbage collection patterns. The underlying trace event processing engine parses and transforms raw ETW event streams into structured performance data for analysis of both Windows kernel and user-mode events.

Features

  • Performance Profilers - A profiler that uses ETW to diagnose .NET application performance, CPU usage, and memory issues.
  • CPU and GC Profilers - Measures CPU time and garbage collection events in .NET processes for performance analysis.
  • CPU Profilers - Samples call stacks at fixed intervals to attribute CPU time to code paths.
  • Execution Path Comparison Tools - Compares two performance traces side-by-side to highlight changes in method costs and event rates.
  • Runtime Performance Profiling - Traces object allocations, method calls, and memory snapshots to diagnose runtime performance issues.
  • Trace Event Processing Engines - Parses and transforms raw ETW event streams into structured performance data for analysis.
  • ETW Event Analyzers - Analyzes Event Tracing for Windows (ETW) events to understand application behavior and system-level performance.
  • Heap Graph Snapshot Analyzers - Captures and queries managed heap snapshots to identify memory leaks and allocation patterns.
  • ETW-Based Tracers - Captures and analyzes Windows ETW events for system and .NET performance diagnostics.
  • ETW Event Collectors - Subscribes to Windows kernel and user-mode events via the Event Tracing for Windows API for performance tracing.
  • Memory Leak Detection - Identifies memory leaks by analyzing heap snapshots and object graphs in .NET applications.
  • Performance Diagnostics - Diagnoses performance bottlenecks in .NET applications by tracing CPU, memory, and GC events.
  • Debug Symbol Resolvers - Resolves raw addresses in stack traces to function names and source lines using debug symbol files.
  • Memory Allocation Tracers - Traces object allocations and garbage collection patterns to reduce memory pressure and improve throughput.
  • Process Attachment Tools - Attaches to running processes to collect trace data and detaches without terminating the target.
  • Flame Graph Visualizers - Generates interactive flame graphs from profiling data to visualize call stack execution time.

Star 历史

microsoft/perfview 的 Star 历史图表microsoft/perfview 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Perfview 的开源替代方案

相似的开源项目,按与 Perfview 的功能重合度排序。
  • nswbmw/node-in-debuggingnswbmw 的头像

    nswbmw/node-in-debugging

    6,457在 GitHub 上查看↗

    This project is a comprehensive technical guide and diagnostic manual for analyzing memory, performance, and asynchronous behavior within Node.js applications. It provides detailed methods for asynchronous tracing, memory diagnostics, and performance analysis to resolve runtime errors and execution bottlenecks. The resource distinguishes itself by covering advanced diagnostic workflows, including the use of flame graphs for CPU profiling, the capture and comparison of heap snapshots for memory leak detection, and the mapping of asynchronous call stacks. It also provides technical guidance on

    debugdebuggingguide
    在 GitHub 上查看↗6,457
  • mstange/samplymstange 的头像

    mstange/samply

    4,263在 GitHub 上查看↗

    Samply is a cross-platform CPU sampling profiler and performance analysis utility. It consists of a command-line tool for recording process stack traces at regular intervals and a visual interface for analyzing the resulting execution data. The system includes a debug symbol resolver that maps raw memory addresses to human-readable function names using local or remote symbol information. It transforms recorded execution data into flame graphs and timelines to pinpoint function-level hotspots. The tool provides capabilities for CPU execution recording, stack unwinding, and symbol resolution a

    Rust
    在 GitHub 上查看↗4,263
  • kdab/hotspotKDAB 的头像

    KDAB/hotspot

    5,074在 GitHub 上查看↗

    Hotspot is a graphical user interface for analyzing and visualizing performance data captured by the Linux perf tool. It functions as a performance profiling visualizer and assembly-level profiler that maps performance costs to specific instructions synchronized with original source code. The project distinguishes itself through a remote symbol resolver that maps performance data from embedded targets to local host debug symbols and sysroots. It also includes a specialized off-CPU analysis tool designed to identify thread wait times and I/O blocks using kernel scheduler tracepoints. The tool

    C++
    在 GitHub 上查看↗5,074
  • samsaffron/memory_profilerSamSaffron 的头像

    SamSaffron/memory_profiler

    1,765在 GitHub 上查看↗

    Memory Profiler is a diagnostic library for Ruby applications designed to monitor runtime memory consumption and object lifecycles. It provides tools to track object allocations and memory usage, enabling the identification of performance bottlenecks and potential memory leaks that affect software stability. The tool functions by observing memory behavior during program execution, allowing developers to distinguish between short-lived data and objects that persist beyond their intended lifecycle. It captures the execution context of allocations by walking the call stack, which helps attribute

    Ruby
    在 GitHub 上查看↗1,765
查看 Perfview 的所有 30 个替代方案→

常见问题解答

microsoft/perfview 是做什么的?

PerfView is a set of integrated profiling and tracing tools built on Windows Event Tracing for Windows (ETW), designed to diagnose CPU, memory, and ETW-based performance issues in .NET applications. It captures ETW events to analyze runtime behavior, CPU usage, and memory allocations, serving as a .NET performance profiler that measures both CPU time and garbage collection events.

microsoft/perfview 的主要功能有哪些?

microsoft/perfview 的主要功能包括:Performance Profilers, CPU and GC Profilers, CPU Profilers, Execution Path Comparison Tools, Runtime Performance Profiling, Trace Event Processing Engines, ETW Event Analyzers, Heap Graph Snapshot Analyzers。

microsoft/perfview 有哪些开源替代品?

microsoft/perfview 的开源替代品包括: nswbmw/node-in-debugging — This project is a comprehensive technical guide and diagnostic manual for analyzing memory, performance, and… mstange/samply — Samply is a cross-platform CPU sampling profiler and performance analysis utility. It consists of a command-line tool… kdab/hotspot — Hotspot is a graphical user interface for analyzing and visualizing performance data captured by the Linux perf tool.… tencent/matrix — Matrix is a suite of mobile application performance management and analysis tools. It provides a plugin-based… samsaffron/memory_profiler — Memory Profiler is a diagnostic library for Ruby applications designed to monitor runtime memory consumption and… alibaba/arthas — Arthas is a Java diagnostic tool and runtime debugger designed for real-time troubleshooting of applications. It…