Skip to main content

Performance Benchmarks

PraisonAI Agents includes comprehensive benchmarks to measure and compare performance against other popular AI agent frameworks.

Benchmark Types

Quick Start

Simple Benchmark

Measures PraisonAI agent instantiation time (no API calls, no tools) and compares against installed frameworks. Every framework is built without tools.

CLI Options

Thresholds file

The script reads benchmarks/thresholds.json for CI budgets:
  • praisonai_instantiation_us_max — hard cap (µs) for --fail-over-threshold. Set to ≈3× the typical ~48 μs we measure on the GitHub-hosted runner.
  • iterations / warmup — override the script’s defaults.

Examples

Performance Benchmark

performance_benchmark.py produces the cross-framework table in BENCHMARK_RESULTS.md. Competitor frameworks are imported lazily, so it runs with only praisonaiagents installed and skips anything missing.

Execution Benchmark

The execution benchmark tests real agent execution with actual LLM API calls. Each framework makes untimed warm-up calls first, so cold imports and the first connection are not counted. The timed runs are interleaved round by round, so network drift affects every framework alike. A run that raises or returns an empty answer counts as a failure, not a timing. The summary reports the median, the mean and the number of successful and failed runs.

CLI Options

Examples

Results

Agent Instantiation (October 2026)

Measured 2026-10-15 on Linux x86_64 (4 CPUs, Python 3.12) · one tool · 10 warmup + 1000 iterations · single script run with the same setup for every framework · source: src/praisonai-agents/benchmarks/BENCHMARK_RESULTS.md
CrewAI is not in this run — its pip resolve hangs. All other rows share the same setup; the previous mislabelled “1.00x (fastest)” row in performance_benchmark.py was fixed in PR #5836, so ratios now compute against the row that is actually fastest.
June 2026 (praisonaiagents 1.6.60): ~13.6 μs avg, measured on a different machine and setup. A same-hardware re-measurement on 2026-10-26 put 1.6.60 at 20.65 μs and main (1.7.11) at 47.92 μs avg. Earlier results (December 2025) and the tools and execution benchmarks were measured under different setups and are no longer published. Past results live in benchmarks/archive/.

Frameworks Compared

Output Files

Benchmarks save results to markdown files in the benchmarks/ directory: Nothing is written unless you pass --save.

Methodology

Methodology

Measures only Agent(...) construction: no LLM call, no import time. 10 warmup + 1000 iterations with time.perf_counter(), one tool. Single machine; numbers vary by hardware and version. Reproduce with python benchmarks/performance_benchmark.py — competitor imports are lazy, so it runs with only praisonaiagents installed. Last measured: 2026-10-15.

Running Your Own Benchmarks

  1. Clone the repository:
  1. Install dependencies:
[llm] installs LiteLLM, which the “PraisonAI (LiteLLM)” rows need. The LangGraph row needs langchain-openai. A script skips any framework that isn’t installed, without an error.
  1. Set your API key:
  1. Run benchmarks: