A .NET library for turning C# methods into reproducible benchmarks, with automatic warm-up, statistics and result reports.
airspeed-velocity/asv
A Python benchmarking tool that tracks package performance across commits and publishes results as a static web report.
- Stars
- 1,023
- Forks
- 216
- Open issues
- 161
- Last commit
- 5 days ago
What is it?
airspeed velocity (asv) benchmarks a Python package over its lifetime. Rather than measuring a single run, it runs a suite of benchmarks against historical commits so developers can see how performance changed over time.
Results are shown in an interactive web frontend. The generated site is static, so it only needs a basic web server to host, with no backend required.
asv is installed from PyPI with pip, and its license is BSD-3-Clause.
Key features
- 01Runs a benchmark suite across the history of a project's commits.
- 02Presents results in an interactive web frontend.
- 03Generates a static site that any basic web server can host.
- 04Installable with pip from PyPI.
Use cases
- Tracking performance regressions in a Python library across releases.
- Publishing a public benchmark history page for a Python project, as the NumPy example site does.
- Comparing performance of a package between commits during development.
Quick start
- 1
Install asv from PyPI
pip install asv
Things to know
- Designed mainly for benchmarking a single project over its lifetime rather than arbitrary one-off comparisons.
In collections
Topics
FAQ
- What is asv?
- A Python benchmarking tool that tracks package performance across commits and publishes results as a static web report. airspeed velocity (asv) benchmarks a Python package over its lifetime. Rather than measuring a single run, it runs a suite of benchmarks against historical commits so developers can see how performance changed over time.
- Is asv free to use? What license does it have?
- asv is open source under the BSD-3-Clause license. Check the license terms before using it in commercial products.
- Is asv still maintained?
- Actively maintained. The last commit to asv was on Nov 3, 2026.
- What can I use asv for?
- Tracking performance regressions in a Python library across releases. Publishing a public benchmark history page for a Python project, as the NumPy example site does. Comparing performance of a package between commits during development.
- How do I install asv?
- Install asv from PyPI: pip install asv
- Where can I get asv?
- The source code and installation instructions are on GitHub: https://github.com/airspeed-velocity/asv
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A Rust profiler that measures CPU, memory, async, SQL, HTTP and I/O bottlenecks, with Prometheus and Grafana export.
A memory profiler for Python that tracks allocations in Python code, native extensions, and the interpreter, with several report types.
A low-overhead Python tracer that records function calls and visualizes code execution as an interactive timeline.
Line-by-line profiler for Python that shows how much time each source line of a decorated function takes.
A low-overhead, zero-instrumentation frame stack sampler for CPython, written in C, for profiling running Python processes.