Application benchmarks

CPU
AMD EPYC 9V74 80-Core Processor · 4 logical CPUs
OS
Linux-6.17.0-1022-azure-x86_64-with-glibc2.39
Samples
10
Parallel jobs
1
Run duration
19m 1s
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 · @main: Monty 1.1.0 · Python 3.15: CPython 3.15.0 · 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 unverified
c9d19e7256886558c67678582d0d223de3eb05232f69da9da657ab9e090f3f35

monty-main · monty · 07419285903bd6f929e779d2eb3b85eea902448f
/home/runner/work/flying-circus/flying-circus/_runtimes/monty-main/bin/monty
Source build: https://github.com/pydantic/monty@07419285903bd6f929e779d2eb3b85eea902448f; cargo build --locked --release -p monty-runtime --bin monty; rustc 1.99.1 (58cf8f9c3 2026-10-13)
e1ed9334115b786093d08b57587908ae07f74da9f0c6acc409d0e028e31da7cd

python3.15 · cpython · Python 3.15.0
/opt/hostedtoolcache/Python/3.15.0/x64/bin/python3.15
Source revision and compiler flags unverified
fd580ad81787ecc7e71f91543dbe52ffccd3e5c4cf286565eceb539081e85992

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 unverified
7aebd6513a8f1dc8529abecf80d25b66951ddb5e9bab14b2750a7dab7947a94d

Process startup · ms

Monty@mainPython 3.15PyPy
1.891.7614.425.9

Runtime · ms · one-shot / repeated

Bars: Python 3.15 = midpoint · blue above = faster, red below = slower · shared asinh scale (5% transition)

WorkloadMonty@mainPython 3.15PyPy
game_nbody834 / 835554 / 555167 / 14419.5 / 19.5
portfolio_risk154 / 154147 / 14797.1 / 87.713.5 / 14.4
game_spectral_norm778 / 780611 / 613160 / 13622.6 / 22.4
game_fannkuchn/a2320 / 2330482 / 45596.9 / 97.3
capacity_planning86.2 / 84.272.9 / 70.821.3 / 16.84.51 / 4.66
expense_report0.43 / 0.310.50 / 0.341.85 / 0.540.40 / 0.53
api_report0.85 / 0.430.94 / 0.451.90 / 0.600.45 / 0.62
order_cleanup0.50 / 0.350.58 / 0.421.95 / 0.610.48 / 0.63
perf_float406 / 360505 / 457102 / 94.525.6 / 23.8
perf_json_loads1.68 / 1.131.93 / 1.383.53 / 2.051.23 / 1.46
perf_barnes_hut7370 / 73607450 / 74701360 / 1240698 / 573
game_regex_dnan/afailed / failed366 / 350227 / 168
stdout_lines3.61 / 3.703.96 / 3.967.19 / 4.546.46 / 4.81
memory_string_list_short341 / 285328 / 283168 / 15092.5 / 99.1
memory_customer_records675 / 605642 / 577269 / 253210 / 140
text_csv_aggregate_medium639 / 615675 / 647139 / 13199.4 / 77.6
text_json_lines_medium21.2 / 20.323.8 / 23.127.2 / 25.618.5 / 18.4
text_json_parse_medium16.3 / 11.419.4 / 14.515.4 / 12.810.7 / 10.1
perf_json_dumps14.7 / 11.717.7 / 14.619.1 / 16.523.0 / 18.8
text_json_lines_small0.97 / 0.561.06 / 0.650.81 / 0.800.72 / 0.76
memory_string_index_short163 / 131165 / 131110 / 94.9114 / 67.7
memory_string_list_long472 / 413448 / 383179 / 161128 / 132
game_meteor_contestn/a586 / 590127 / 11992.8 / 90.7
text_json_transform_small0.94 / 0.511.00 / 0.570.70 / 0.690.52 / 0.64
text_csv_cleanup_medium1250 / 12201320 / 1300256 / 249194 / 188
text_json_parse_small0.77 / 0.390.85 / 0.460.47 / 0.470.37 / 0.48
game_pidigitsn/an/a221 / 219195 / 194
text_line_logs_small0.59 / 0.540.60 / 0.560.54 / 0.580.60 / 0.64
text_json_transform_medium19.7 / 14.722.6 / 17.616.9 / 14.115.8 / 15.3
memory_string_index_long235 / 192227 / 181124 / 108129 / 107
text_regex_logs_medium38.7 / 37.438.7 / 37.323.4 / 21.028.2 / 21.9
text_regex_logs_small1.50 / 0.951.57 / 1.020.91 / 0.712.64 / 0.95
text_line_logs_medium27.6 / 27.024.6 / 24.113.2 / 11.817.6 / 16.3
ticket_search44.2 / 42.139.9 / 37.715.1 / 11.520.4 / 19.5
perf_unpack_sequence361 / 363112 / 11226.6 / 24.660.3 / 58.9
text_csv_aggregate_small6.93 / 6.557.31 / 6.922.62 / 2.498.21 / 8.18
text_csv_cleanup_small12.7 / 12.213.5 / 13.14.01 / 3.8014.6 / 14.9

Peak RSS · MiB · one-shot

Bars: Python 3.15 = midpoint · blue above = less memory, red below = more memory · shared asinh scale (5% transition)

WorkloadMonty@mainPython 3.15PyPy
text_json_lines_medium24.724.724.8124
text_json_parse_small19.920.020.057.9
text_json_transform_medium24.224.324.3126
expense_report19.920.020.057.5
api_report19.920.020.057.4
order_cleanup19.920.020.057.5
text_line_logs_medium24.324.324.3125
text_regex_logs_small19.920.019.958.2
ticket_search19.919.919.960.2
text_json_parse_medium24.424.224.3126
text_line_logs_small19.919.919.957.9
text_json_transform_small20.019.919.957.9
portfolio_risk20.020.020.058.6
game_meteor_contestn/a19.919.960.9
game_fannkuchn/a19.919.958.6
text_json_lines_small20.020.020.057.8
text_regex_logs_medium22.222.122.1127
text_csv_cleanup_small20.019.919.959.2
game_nbody20.020.019.958.7
perf_json_dumps20.020.019.960.6
perf_json_loads19.920.019.957.5
capacity_planning20.020.019.958.1
perf_unpack_sequence19.920.019.862.7
text_csv_aggregate_small19.919.919.958.6
stdout_lines20.020.019.959.4
game_spectral_norm20.020.019.959.1
perf_barnes_hut20.020.019.988.8
memory_string_index_long67.667.853.9124
memory_string_index_short56.056.942.3108
text_csv_cleanup_medium49.649.633.8147
text_csv_aggregate_medium42.442.228.0149
memory_string_list_long11311369.7125
memory_string_list_short89.289.746.599.5
perf_float57.557.829.469.9
memory_customer_records15615768.0134
game_pidigitsn/an/a20.064.9
game_regex_dnan/afailed20.087.2