Airspeed Velocity (asv) is a tool for benchmarking Python packages over their lifetime. It is primarily designed to benchmark a single project over its lifetime using a given suite of benchmarks. The results are displayed in an interactive web frontend that requires only a basic static webserver to host. The current version is 0.6.5, released in September 2025, and it maintains a relatively active release cadence with several updates per year.
pip install asvVerified import paths — ran on the pinned version, not inferred.
To get started, navigate to your project directory (or a new directory for benchmarks) and run `asv quickstart` to set up the basic configuration and an example benchmark file. Then, define your benchmarks in Python files within the `benchmarks/` directory, typically as classes with `time_` or `mem_` prefixed methods. Finally, execute `asv run` to collect benchmark data and `asv publish` to generate the interactive web report, which can be viewed with `asv browse`.
Carefully consider benchmark naming conventions from the start. If changes are necessary, acknowledge that historical data for that specific benchmark series will be lost or fragmented. Documentation advises on pitfalls of changing `benchmark_name` attributes.
Interact with ASV via its command-line interface. Benchmark definitions are Python code, but the execution and reporting are driven by the `asv` command.
Be mindful of the precedence: `environment_matrix` in `asv.conf.json` takes priority. Ensure your dependency specifications are consistent or intentionally configured across both files if you use both methods.
Ensure your project is under version control (Git or Mercurial) and that the `repo` path in `asv.conf.json` correctly points to your repository.
Specify 'Python asv' or 'Airspeed Velocity' when referring to this library.