
Blackfire Continuous Profiler
Low-overhead continuous profiling for app performance optimization.
Discover top open-source software, updated regularly with real-world adoption signals.

Low-overhead Python tracer with interactive Perfetto visualizations
VizTracer records function entry/exit, threading, async, and PyTorch events with minimal impact, then visualizes traces in a Perfetto‑based UI that handles gigabytes of data smoothly.

VizTracer is a lightweight tracing tool for Python that captures detailed function entry and exit information, source code locations, and runtime events such as threading, multiprocessing, async coroutines, and PyTorch GPU activity. It requires little to no code changes—simply run your script with or use the provided context manager—and produces a JSON trace that can be opened in the built‑in UI.
viztracervizviewerThe trace data is rendered by a Perfetto‑powered front‑end, offering smooth navigation, zooming (AWSD), flame‑graph generation, and the ability to handle GB‑scale files. Advanced features include customizable filters, extra variable logging, and custom events, while optional orjson support speeds up JSON serialization. VizTracer runs on Linux, macOS, and Windows, and integrates with remote attach, making it suitable for a wide range of development and debugging workflows.
When teams consider VizTracer, these hosted platforms usually appear on the same shortlist.
Looking for a hosted option? These are the services engineering teams benchmark against before choosing open source.
Debugging a Flask web service
Identify slow request handlers and middleware latency
Profiling a PyTorch training loop
Visualize GPU kernel timings and Python‑level function calls
Analyzing an async data pipeline
See coroutine scheduling, I/O waits, and event ordering
Tracing a multi‑process ETL job
Correlate subprocess activities across workers in a single view
Run `pip install viztracer` to install the package from PyPI.
No. You can invoke `viztracer` from the command line or use the `VizTracer` context manager; most features work without code changes.
Yes, the Perfetto UI can render gigabyte‑scale traces, and the `--use_external_processor` flag helps with very large files.
Enable with `--log_torch` or `log_torch=True`; VizTracer integrates with `torch.profiler` to capture native calls and GPU timings.
VizTracer runs on Linux, macOS, and Windows.
Project at a glance
ActiveLast synced 4 days ago