austin-dist
Austin - Frame Stack Sampler for CPython
Decision gist · record as of 2026-08-14
Yes, if you need a low-overhead profiler for CPython. Austin's zero-instrumentation design and broad platform support make it valuable for production profiling. The GPLv3+ license requires review if used in proprietary contexts. Install friction is moderate due to compiled wheels, but pre-built binaries are available across major platforms. No known vulnerabilities and active maintenance support the recommendation.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires CPython runtime; Austin is a native profiler that reads interpreter memory and does not work with PyPy or other Python implementations.
- Medium install friction due to compiled wheels across multiple platforms (macOS arm64/x86_64, Linux x86_64/aarch64/armv7l/ppc64le, musl variants, Windows).
- Active maintenance with recent release (286 days ago) and 2211 repository stars indicate solid project health.
License · maintenance · safety
GPLv3+ (copyleft) — GPLv3+ copyleft license means any derivative work or distribution must also be open-source under compatible terms. Acceptable for internal use and open-source projects, but requires careful review if integrating into proprietary software.
last release 2025-11-01 (286 days) · last repo commit 2026-07-02 · 2,211 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 841,263 downloads/mo, #4,926 on PyPI
Alternatives
Verify before relying
pip install austin-dist
# Profile a Python script
auston -o output.txt python my_script.py
# Pipe output to flamegraph
auston python my_script.py | flamegraph.pl > flame.svg- Exact performance overhead and sampling accuracy compared to other profilers
- Whether the VS Code extension and Speedscope integration are actively maintained
- Support for profiling async/await code and coroutines
- Memory profiling granularity and accuracy for large heap applications
What it is and what it does
Austin is a statistical profiler for CPython that samples the call stack of running processes by directly reading the interpreter's virtual memory, without requiring code instrumentation or modifications. It works as a standalone command-line tool that can profile CPU time, memory usage, and garbage collection state across single and multi-process applications.
The profiler is designed for minimal runtime overhead and produces output compatible with FlameGraph and Speedscope visualization tools. It supports modern Python versions (3.9 through 3.14) and runs on Linux, macOS, and Windows with pre-built wheels available for multiple architectures. The tool is particularly useful for identifying performance bottlenecks in production-like environments where instrumentation overhead is unacceptable.
Use it for
- Identify CPU hotspots in long-running Python applications without modifying source code
- Profile memory usage patterns in data-heavy workloads to detect leaks or inefficient allocations
- Analyze multi-process applications like mod_wsgi to understand per-process resource consumption
- Generate flamegraph visualizations for performance review and optimization planning
- Sample garbage collection behavior to diagnose GC-related performance issues
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need a low-overhead profiler for CPython.
Austin's zero-instrumentation design and broad platform support make it valuable for production profiling. The GPLv3+ license requires review if used in proprietary contexts. Install friction is moderate due to compiled wheels, but pre-built binaries are available across major platforms. No known vulnerabilities and active maintenance support the recommendation.
Install
austin-dist on PyPI
Before you install
Medium install friction due to compiled wheels across multiple platforms (macOS arm64/x86_64, Linux x86_64/aarch64/armv7l/ppc64le, musl variants, Windows). Active maintenance with recent release (286 days ago) and 2211 repository stars indicate solid project health.
Requires CPython runtime; Austin is a native profiler that reads interpreter memory and does not work with PyPy or other Python implementations.
License in practice
GPLv3+ copyleft license means any derivative work or distribution must also be open-source under compatible terms. Acceptable for internal use and open-source projects, but requires careful review if integrating into proprietary software.
Quickstart
pip install austin-dist
# Profile a Python script
auston -o output.txt python my_script.py
# Pipe output to flamegraph
auston python my_script.py | flamegraph.pl > flame.svg
Verify before relying
- Exact performance overhead and sampling accuracy compared to other profilers
- Whether the VS Code extension and Speedscope integration are actively maintained
- Support for profiling async/await code and coroutines
- Memory profiling granularity and accuracy for large heap applications
Package facts
| License | GPLv3+ copyleft |
| Python support | Not specified |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | None |
| Maintenance | Actively maintained 286 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 841,263 / month, #4,926 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.9 |
Evidence: austin_dist-4.0.0-py3-none-macosx_11_0_arm64.whl; austin_dist-4.0.0-py3-none-macosx_11_0_x86_64.whl; austin_dist-4.0.0-py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl; austin_dist-4.0.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; austin_dist-4.0.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl; austin_dist-4.0.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl; austin_dist-4.0.0-py3-none-musllinux_1_1_aarch64.whl; austin_dist-4.0.0-py3-none-musllinux_1_1_armv7l.whl; austin_dist-4.0.0-py3-none-musllinux_1_1_ppc64le.whl; austin_dist-4.0.0-py3-none-musllinux_1_1_x86_64.whl; austin_dist-4.0.0-py3-none-win_amd64.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “python profiler no instrumentation”
- austin-distAustin is a frame stack sampler for CPython that profiles running…
- nvidia-nvtxProvides a Python API for annotating events and code ranges in…
- nvidia-nvtx-cu11Provides a C-based API for annotating events, code ranges, and…
Give your agent the search over MCP, or paste the wish link into any chat.
More Monitoring packages
Wraps any iterable to display a real-time progress bar in the terminal or Jupyter notebook, showing iteration count, elapsed time, and estimated time remaining.
Provides generated Python code for OpenTelemetry semantic conventions, enabling standardized attribute naming and constant definitions for instrumentation and telemetry collection.
Install it if you are using OpenTelemetry and want to follow semantic conventions correctly.
Provides the reference implementation of the OpenTelemetry API for collecting and exporting traces, metrics, and logs from Python applications.
Provides the abstract API and interfaces for OpenTelemetry instrumentation in Python, defining how to emit traces, metrics, and logs without tying code to a specific SDK implementation.
Exports OpenTelemetry observability data to an OpenTelemetry Collector using Protobuf-encoded messages over HTTP.
Install it if you are using OpenTelemetry in Python and need to send data to a Collector over HTTP.
Provides automatic instrumentation commands and programmatic APIs to inject distributed tracing into Python applications without code changes, detecting and instrumenting packages used by your program.
Install it if you need distributed tracing without code changes and have compatible instrumented packages in your environment.
See also py-spy · pyroscope-io · xprof · scalene · yappi · nvidia-nvtx · tensorboard-plugin-profile · snakeviz · google-cloud-profiler