Application benchmarks
- CPU
- AMD EPYC 7763 64-Core Processor · 4 logical CPUs
- OS
- Linux-6.17.0-1022-azure-x86_64-with-glibc2.39
- Samples
- 20
- Parallel jobs
- 1
- Run duration
- 29m 19s
Measurement details
- Repeated warmups
- 3
- Timing
- Median ms · one-shot / repeated · startup excluded
- RSS
- Median MiB · separate one-shot processes including startup
- Startup
- Empty -c command · launch through exit · normal defaults
- Sort
- Percentage advantage vs chart reference · largest improvement first; click headers to reorder
Monty 1.1.0 · Monty main: Monty 1.1.0 · CPython 3.14.8 · PyPy 8.0.0
Runtimes and build details
monty · monty · 1.1.0
/home/runner/work/flying-circus/flying-circus/_runtimes/monty/bin/monty
Prebuilt PyPI wheel: pydantic-monty-runtime==1.1.0; source revision and compiler flags unverifiedc9d19e7256886558c67678582d0d223de3eb05232f69da9da657ab9e090f3f35
monty-main · monty · ae5d3f03ae20b80677b1d9a8808653358fc21785
/home/runner/work/flying-circus/flying-circus/_runtimes/monty-main/bin/monty
Source build: https://github.com/pydantic/monty@ae5d3f03ae20b80677b1d9a8808653358fc21785; cargo build --locked --release -p monty-runtime --bin monty; rustc 1.99.0 (b940084d7 2026-09-28)9da2d67989738f54fb7cd0b375fd99a52bc8362ee8ab88d22b86aa182dbd9b3e
cpython · cpython · Python 3.14.8
/opt/hostedtoolcache/Python/3.14.8/x64/bin/python3.14
Source revision and compiler flags unverifieda5230d8adbd26c2185d77fb003597c4ee9c44c2369fc179122ff7c3a3a58ae59
pypy · pypy · Python 3.11.16 (78565394c9b5, Sep 18 2026, 08:00:14)
[PyPy 8.0.0 with GCC 14.2.1 20250110 (Red Hat 14.2.1-11)]
/opt/hostedtoolcache/PyPy/3.11.16/x64/bin/pypy3.11
Source revision and compiler flags unverified7aebd6513a8f1dc8529abecf80d25b66951ddb5e9bab14b2750a7dab7947a94d
Process startup · ms
| Monty | Monty main | CPython | PyPy |
|---|---|---|---|
| 1.83 | 1.69 | 13.3 | 25.1 |
Runtime · ms · one-shot / repeated
Bars: cpython = midpoint · blue above = faster, red below = slower · shared asinh scale (5% transition)
| Workload | Monty | Monty main | CPython | PyPy |
|---|---|---|---|---|
| game_nbody | 756 / 756 | 723 / 717 | 146 / 144 | 19.7 / 19.3 |
| portfolio_risk | 149 / 148 | 108 / 108 | 88.3 / 83.0 | 12.8 / 13.8 |
| game_spectral_norm | 685 / 688 | 606 / 605 | 144 / 139 | 22.9 / 22.5 |
| game_fannkuch | n/a | n/a | 504 / 492 | 87.9 / 88.0 |
| capacity_planning | 77.3 / 75.2 | 61.8 / 59.5 | 22.7 / 19.7 | 4.69 / 4.54 |
| expense_report | 0.41 / 0.32 | 0.46 / 0.36 | 1.98 / 0.56 | 0.48 / 0.54 |
| order_cleanup | 0.48 / 0.39 | 0.56 / 0.44 | 2.05 / 0.62 | 0.55 / 0.62 |
| perf_float | 390 / 348 | 469 / 400 | 97.0 / 89.8 | 25.1 / 22.5 |
| api_report | 0.84 / 0.47 | 0.92 / 0.52 | 2.02 / 0.61 | 0.55 / 0.63 |
| perf_json_loads | 1.63 / 1.21 | 1.81 / 1.32 | 3.83 / 2.16 | 1.33 / 1.41 |
| game_regex_dna | n/a | n/a | 323 / 311 | 220 / 150 |
| perf_barnes_hut | 6960 / 6950 | 7490 / 7500 | 1280 / 1260 | 740 / 633 |
| stdout_lines | 3.66 / 3.88 | 4.09 / 3.67 | 7.03 / 4.62 | 6.83 / 4.91 |
| memory_string_list_short | 330 / 285 | 313 / 274 | 157 / 144 | 86.1 / 172 |
| text_csv_aggregate_medium | 597 / 577 | 627 / 605 | 142 / 133 | 99.2 / 77.3 |
| perf_json_dumps | 14.3 / 11.9 | 16.5 / 13.6 | 22.1 / 19.6 | 24.5 / 20.4 |
| text_json_parse_medium | 15.4 / 11.3 | 17.3 / 13.0 | 17.6 / 15.7 | 10.8 / 12.1 |
| text_json_lines_medium | 21.1 / 20.4 | 21.9 / 20.9 | 28.5 / 26.5 | 19.0 / 19.7 |
| memory_customer_records | 601 / 507 | 567 / 505 | 262 / 258 | 207 / 173 |
| game_meteor_contest | n/a | n/a | 127 / 121 | 93.1 / 88.0 |
| memory_string_list_long | 445 / 387 | 442 / 399 | 168 / 156 | 122 / 168 |
| text_csv_cleanup_medium | 1180 / 1140 | 1240 / 1210 | 263 / 252 | 198 / 186 |
| text_json_lines_small | 0.95 / 0.62 | 1.01 / 0.68 | 0.85 / 0.84 | 0.78 / 0.77 |
| text_json_transform_small | 0.91 / 0.55 | 0.97 / 0.60 | 0.73 / 0.72 | 0.58 / 0.67 |
| memory_string_index_short | 168 / 137 | 168 / 128 | 115 / 98.2 | 112 / 77.1 |
| text_json_parse_small | 0.77 / 0.43 | 0.85 / 0.50 | 0.51 / 0.51 | 0.41 / 0.58 |
| text_json_transform_medium | 18.7 / 14.2 | 20.2 / 15.6 | 18.9 / 16.8 | 16.2 / 16.0 |
| game_pidigits | n/a | n/a | 197 / 196 | 179 / 180 |
| memory_string_index_long | 231 / 188 | 244 / 190 | 127 / 110 | 131 / 104 |
| text_regex_logs_medium | 38.8 / 37.5 | 37.6 / 35.6 | 25.3 / 23.8 | 29.0 / 23.0 |
| text_line_logs_small | 0.59 / 0.57 | 0.62 / 0.59 | 0.57 / 0.59 | 0.64 / 0.67 |
| text_regex_logs_small | 1.45 / 0.95 | 1.50 / 1.01 | 0.98 / 0.76 | 2.83 / 1.02 |
| text_line_logs_medium | 26.9 / 26.4 | 27.1 / 26.5 | 14.0 / 12.1 | 17.7 / 16.9 |
| ticket_search | 41.8 / 39.5 | 43.0 / 41.0 | 14.6 / 11.3 | 21.2 / 20.4 |
| perf_unpack_sequence | 334 / 341 | 338 / 344 | 28.1 / 23.5 | 58.7 / 57.4 |
| text_csv_aggregate_small | 6.43 / 6.05 | 6.74 / 6.38 | 2.61 / 2.51 | 8.55 / 8.57 |
| text_csv_cleanup_small | 11.9 / 11.4 | 12.6 / 12.1 | 3.89 / 3.74 | 15.3 / 15.6 |
Peak RSS · MiB · one-shot
Bars: cpython = midpoint · blue above = less memory, red below = more memory · shared asinh scale (5% transition)