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
15m 49s
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.2.0 · @main: Monty 1.2.0 · Python 3.15: CPython 3.15.0 · PyPy 8.0.0

Runtimes and build details

monty · monty · 1.2.0
/home/runner/work/flying-circus/flying-circus/_runtimes/monty/bin/monty
Prebuilt PyPI wheel: pydantic-monty-runtime==1.2.0; source revision and compiler flags unverified
d36ff64238568cd0fa6e152f5359512b7cd78acc000a0659fe1823ebf54b85b5

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

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.711.6211.622.2

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_nbody544 / 544451 / 447132 / 11015.2 / 15.3
portfolio_risk128 / 127127 / 12777.2 / 68.410.6 / 11.8
game_spectral_norm615 / 614490 / 490122 / 10618.0 / 18.5
game_fannkuch1840 / 18401760 / 1780387 / 35277.4 / 77.8
capacity_planning66.3 / 64.755.6 / 53.815.8 / 13.23.58 / 3.71
expense_report0.37 / 0.300.44 / 0.321.48 / 0.430.34 / 0.47
perf_float335 / 300419 / 36484.4 / 77.520.3 / 19.1
api_report0.73 / 0.390.81 / 0.431.52 / 0.530.38 / 0.54
order_cleanup0.41 / 0.330.49 / 0.391.51 / 0.540.39 / 0.53
perf_json_loads1.37 / 0.951.52 / 1.112.84 / 1.660.98 / 1.16
game_regex_dnafailed / failedfailed / failed290 / 272180 / 131
perf_barnes_hut5210 / 52605860 / 5880995 / 978544 / 500
memory_string_list_short262 / 218265 / 219136 / 11973.0 / 79.2
memory_customer_records537 / 436525 / 427212 / 212172 / 116
stdout_lines3.25 / 2.873.10 / 3.205.57 / 3.665.09 / 3.88
text_csv_aggregate_medium493 / 480544 / 527106 / 10280.8 / 64.0
memory_string_index_short127 / 109135 / 11692.3 / 87.293.4 / 58.5
text_json_lines_medium15.9 / 15.718.1 / 17.821.5 / 20.314.8 / 15.7
perf_json_dumps11.7 / 9.3614.1 / 11.714.8 / 13.117.9 / 15.8
text_json_parse_medium13.3 / 9.8115.0 / 11.312.2 / 10.68.79 / 8.49
game_meteor_contest434 / 434458 / 46099.1 / 92.872.3 / 71.0
memory_string_list_long365 / 304359 / 292144 / 128106 / 100
text_csv_cleanup_medium970 / 9641050 / 1050202 / 202156 / 154
text_json_lines_small0.81 / 0.500.84 / 0.530.63 / 0.660.58 / 0.62
text_json_transform_small0.77 / 0.430.83 / 0.460.54 / 0.550.42 / 0.54
text_json_parse_small0.66 / 0.350.70 / 0.370.37 / 0.390.29 / 0.41
game_pidigitsn/an/a171 / 170152 / 154
text_line_logs_small0.45 / 0.420.49 / 0.440.43 / 0.460.47 / 0.51
memory_string_index_long185 / 157192 / 155102 / 95.5105 / 89.0
text_json_transform_medium15.7 / 12.017.4 / 13.713.2 / 11.613.2 / 12.7
text_regex_logs_medium29.3 / 28.031.8 / 30.718.4 / 16.922.2 / 17.8
text_line_logs_medium19.3 / 19.119.0 / 18.510.5 / 9.3014.0 / 13.8
ticket_search31.8 / 30.731.5 / 30.411.8 / 9.5016.0 / 16.0
text_regex_logs_small1.21 / 0.781.29 / 0.820.72 / 0.572.08 / 0.91
perf_unpack_sequence128 / 12788.0 / 86.620.7 / 19.747.1 / 49.0
text_csv_aggregate_small5.27 / 5.045.77 / 5.542.04 / 1.986.39 / 6.66
text_csv_cleanup_small9.72 / 9.4310.7 / 10.33.15 / 3.0111.4 / 12.2

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_regex_logs_medium22.022.222.2127
game_meteor_contest20.020.020.161.0
text_json_lines_medium24.924.824.9124
text_json_parse_medium24.324.324.4126
text_json_transform_medium24.424.324.4126
capacity_planning20.120.020.158.2
text_json_transform_small20.020.020.157.9
ticket_search20.020.020.160.2
text_line_logs_small20.020.120.157.9
portfolio_risk20.020.020.058.6
text_regex_logs_small20.120.020.158.2
expense_report20.019.920.057.4
game_spectral_norm20.120.020.159.2
text_csv_aggregate_small20.020.020.058.6
perf_unpack_sequence20.020.020.063.0
text_json_parse_small20.020.120.057.9
game_nbody20.120.120.158.8
perf_json_loads20.120.120.157.5
perf_json_dumps20.020.020.060.7
stdout_lines20.020.020.059.4
game_fannkuch20.020.019.958.8
text_csv_cleanup_small20.120.020.059.2
order_cleanup20.120.120.057.4
text_json_lines_small20.020.020.057.9
perf_barnes_hut20.120.120.088.9
api_report20.120.020.057.5
text_line_logs_medium24.424.324.2125
memory_string_index_long67.868.154.0124
memory_string_index_short56.256.742.4108
text_csv_cleanup_medium50.250.033.9147
text_csv_aggregate_medium42.442.328.1149
memory_string_list_long11211369.8125
memory_string_list_short89.690.346.599.5
memory_customer_records15715768.1134
perf_float57.858.329.369.9
game_pidigitsn/an/a20.064.9
game_regex_dnafailedfailed20.187.2