# nvdv/vprof

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/nvdv-vprof).**

3,979 stars · 151 forks · Python · BSD-2-Clause

## Links

- GitHub: https://github.com/nvdv/vprof
- awesome-repositories: https://awesome-repositories.com/repository/nvdv-vprof.md

## Topics

`cpu-flame-graph` `d3` `developer-tools` `javascript` `profiler` `python` `stats` `visualization`

## Description

vprof is a visual profiling tool for Python designed to identify execution bottlenecks and monitor memory consumption. It functions as a CPU and memory profiler that transforms performance data into interactive visualizations to analyze processor time and call stacks.

The project distinguishes itself through a suite of visual diagnostics, including flame graphs for stack visualization and heatmaps that map execution frequency and duration directly onto source code. It also includes a remote performance monitor capable of capturing function-specific metrics from a running server and streaming that data to a separate visualization tool.

The tool covers broad capability areas including sampling-based CPU profiling, line-level memory monitoring through garbage collector tracking, and profile data persistence for offline analysis. These utilities allow for the auditing of source code efficiency and the identification of memory leaks.

## Tags

### Development Tools & Productivity

- [Python Profilers](https://awesome-repositories.com/f/development-tools-productivity/debugging-profiling-testing/debugging-diagnostics/performance-resource-profilers/cpu-profilers/python-profilers.md) — Provides a comprehensive suite for measuring execution time and identifying CPU bottlenecks in Python programs.
- [Code Execution Profilers](https://awesome-repositories.com/f/development-tools-productivity/code-execution-profilers.md) — Analyzes runtime performance of code using heatmaps that show execution counts and run times for every line. ([source](https://github.com/nvdv/vprof#readme))
- [Source Code Heatmaps](https://awesome-repositories.com/f/development-tools-productivity/code-execution-profilers/source-code-heatmaps.md) — Produces heatmaps of source code showing execution counts and run times for every line. ([source](https://github.com/nvdv/vprof/blob/master/README.md))
- [CPU Profilers](https://awesome-repositories.com/f/development-tools-productivity/debugging-profiling-testing/debugging-diagnostics/performance-resource-profilers/cpu-profilers.md) — Captures periodic snapshots of the call stack to estimate execution time and identify performance bottlenecks.
- [Visual Profiling Toolkits](https://awesome-repositories.com/f/development-tools-productivity/debugging-profiling-testing/debugging-diagnostics/performance-resource-profilers/cpu-profilers/python-profilers/visual-profiling-toolkits.md) — Provides an interactive visual interface for analyzing Python performance via flame graphs, heatmaps, and statistics.
- [Execution Heatmaps](https://awesome-repositories.com/f/development-tools-productivity/source-code-mapping/execution-heatmaps.md) — Overlays execution frequency and duration data directly onto source code for visual performance analysis.
- [Execution Tracking](https://awesome-repositories.com/f/development-tools-productivity/source-line-tracking/execution-tracking.md) — Instruments source code to record execution counts and timing statistics for every individual line of code.
- [Performance Code Auditing](https://awesome-repositories.com/f/development-tools-productivity/source-code-line-mappers/performance-code-auditing.md) — Visualizes line-by-line execution counts and run times through heatmaps to optimize specific blocks of code.

### Operating Systems & Systems Programming

- [Memory Leak Detectors](https://awesome-repositories.com/f/operating-systems-systems-programming/kernel-core-internals/process-and-memory-management/memory-management/automated-reclamation-systems/garbage-collection/precise-garbage-collectors/memory-leak-detectors.md) — Interfaces with the Python memory manager to track object allocations and identify memory leaks.

### Programming Languages & Runtimes

- [Memory Consumption Trackers](https://awesome-repositories.com/f/programming-languages-runtimes/memory-consumption-trackers.md) — Tracks objects in the garbage collector and monitors process memory usage to identify leaks and heavy allocations. ([source](https://github.com/nvdv/vprof/blob/master/README.md))
- [Python Execution Visualizations](https://awesome-repositories.com/f/programming-languages-runtimes/python-execution-visualizations.md) — Generates interactive charts and heatmaps to analyze how a Python program performs across its call stack.

### System Administration & Monitoring

- [Line-Level Resource Monitors](https://awesome-repositories.com/f/system-administration-monitoring/resource-monitoring/line-level-resource-monitors.md) — Provides granular profiling that pinpoints specific lines of code responsible for memory consumption and performance overhead. ([source](https://github.com/nvdv/vprof#readme))
- [Flame Graphs](https://awesome-repositories.com/f/system-administration-monitoring/system-performance-profiling/flame-graphs.md) — Generates interactive flame graphs of call stacks to identify resource-intensive functions and processing bottlenecks. ([source](https://github.com/nvdv/vprof/blob/master/MANIFEST.in))
- [Remote Profiling Interfaces](https://awesome-repositories.com/f/system-administration-monitoring/monitoring-and-observability/execution-tracing-analysis/remote-profiling-interfaces.md) — Implements interfaces to capture and render performance statistics from functions running on a remote server. ([source](https://github.com/nvdv/vprof#readme))
- [Remote Function Profiling](https://awesome-repositories.com/f/system-administration-monitoring/remote-function-profiling.md) — Deno profiling utility that captures performance metrics for individual functions by routing data to a remote visualization server. ([source](https://github.com/nvdv/vprof/blob/master/README.md))
- [Remote Monitoring](https://awesome-repositories.com/f/system-administration-monitoring/remote-monitoring.md) — Captures and renders performance statistics from functions running on a remote server.

### Networking & Communication

- [Remote Profiling Streams](https://awesome-repositories.com/f/networking-communication/unix-domain-socket-support/profiling-via-unix-sockets/remote-profiling-streams.md) — Transports profiling metrics from a target Python process to a separate visualization server via network sockets.

### Testing & Quality Assurance

- [Program Execution Visualization](https://awesome-repositories.com/f/testing-quality-assurance/program-execution-visualization.md) — Transforms raw profiler data into interactive charts and visual maps of program resource consumption. ([source](https://github.com/nvdv/vprof/blob/master/setup.py))
