Skip to content

takt

takt runs pyperformance benchmarks or your own pyperf scripts. It writes every result to one or more SQL databases at once. It then compares results from these databases and from result files.

Installation

SQLite only:

pip install takt-py

With MariaDB support:

pip install "takt-py[mariadb]"

takt needs Python 3.14 or newer.

Quick start

Run the nbody benchmark and store the result in a SQLite file under the name baseline <today's UTC date>:

takt run -b nbody --fast --db sqlite:///bench.db --name "baseline {date}"

Store a result file you already have, for example a run of a patched Python, under the name patched:

takt import result.json --db sqlite:///bench.db --name patched

Compare the two runs by name:

takt compare "baseline 2026-09-25" patched --db sqlite:///bench.db

Compatibility

takt Python pyperf pyperformance
0.1.0 >=3.14 >=2.10.0,<2.11 >=1.14.0,<1.15

Next steps

  • Configuration: target databases, takt.toml, environment variables and run names.
  • Commands: takt run, takt import, takt compare and exit codes.
  • Data model: the tables takt creates, for your own SQL queries.
  • API: the same commands as a Python library.

Author

Shamil Abdulaev, Python developer, CPython and glibc contributor: ashm-dev.github.io.