---
nav_title: CLI benchmarks
parent: Reference
nav_order: 50
---
# CLI benchmarks
Numbers are produced by `cargo benchmarks cli`. Measures the `lemma` binary and in-process engine wrappers used by the CLI.
## Methodology
### HTTP evaluate (`http_evaluate`)
- Spawns `lemma server --prefix cli/documentation/examples` on `127.0.0.1:19877` once per Criterion group.
- Each iteration: blocking `reqwest` POST with `application/x-www-form-urlencoded` body (coffee order, library fees, Dutch net salary) or GET for show-only retrieval.
- Examples loaded from [`cli/documentation/examples`](https://github.com/lemma/lemma/tree/29121c6f461be9c25d7703ea6ec12812ffc53d3e/cli/documentation/examples).
- Latency: Criterion (3s warmup, 10s measurement for evaluate group, 5s for show). Median and standard deviation reported.
### Engine profile (`engine_profile`)
- In-process: loads all `.lemma` files from `cli/documentation/examples` into one `Engine`.
- Fixture: Dutch net salary (`net_salary`) with `gross_salary=5000 eur`, `pay_period=month`, `income_source=employment`, `pension_contribution=150 eur`, `payroll_tax_credit=true`; effective is `DateTimeValue::now()` per iteration setup.
- Breakdown benches isolate evaluate, overlay resolve, single-rule run, and JSON serialization paths.
- Latency: Criterion (3s warmup, 5s measurement). Median and standard deviation reported.
## Environment
- Host: `Linux 7.0.0-28-generic x86_64`
- Lemma git SHA: `29121c6f461be9c25d7703ea6ec12812ffc53d3e`
- Rustc:
```
rustc 1.92.0 (ded5c06cf 2025-12-08)
binary: rustc
commit-hash: ded5c06cf21d2b93bffd5d884aa6e96934ee4234
commit-date: 2025-12-08
host: x86_64-unknown-linux-gnu
release: 1.92.0
LLVM version: 21.1.3
```
## HTTP evaluate latency
| POST `/coffee_order` | 288.92 us | 29.95 us |
| POST `/library_fees` | 162.26 us | 17.78 us |
| POST `/net_salary` | 656.37 us | 48.96 us |
| GET `/net_salary` (show only) | 180.21 us | 8.27 us |
## Engine profile latency (Dutch net salary)
| Full `Engine::run` | 407.23 us | 14.59 us |
| Single-rule evaluate (`periods_per_year`) | 22.84 us | 518 ns |
| Envelope JSON serialize | 20.23 us | 1.66 us |
| Raw response JSON serialize | 2.52 us | 59 ns |