Application benchmarks

CPU
Intel(R) Xeon(R) 6973P-C · 4 logical CPUs
OS
Linux-7.0.0-1017-azure-x86_64-with-glibc2.39
Samples
10
Parallel jobs
1
Run duration
12m 40s
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.3.0 · Python 3.15: CPython 3.15.0 · PyPy 8.0.1

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 · 9ccbaffdd2cfd5839e0a0ff1248ab901de51eb4c
/home/runner/work/flying-circus/flying-circus/_runtimes/monty-main/bin/monty
Source build: https://github.com/pydantic/monty@9ccbaffdd2cfd5839e0a0ff1248ab901de51eb4c; cargo build --locked --release -p monty-runtime --bin monty; rustc 1.99.1 (58cf8f9c3 2026-10-13)
ea6a6ea2c4c42c7fda99d47a28dc9f2e97a6c98cc7c5f8b38aca33a379ecceae

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.17 (ec82f20141cf, Oct 13 2026, 15:02:27) [PyPy 8.0.1 with GCC 14.2.1 20250110 (Red Hat 14.2.1-11)]
/opt/hostedtoolcache/PyPy/3.11.17/x64/bin/pypy3.11
Source revision and compiler flags unverified
7aebd6513a8f1dc8529abecf80d25b66951ddb5e9bab14b2750a7dab7947a94d

Process startup · ms

Monty@mainPython 3.15PyPy
1.061.018.4414.0

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_nbody356 / 346341 / 34183.0 / 82.315.8 / 12.9
portfolio_risk83.9 / 83.782.4 / 82.557.1 / 57.516.8 / 11.7
perf_float271 / 252297 / 26563.4 / 65.821.8 / 13.7
game_spectral_norm361 / 361345 / 34579.1 / 79.830.6 / 19.2
game_fannkuch1350 / 13701350 / 1400295 / 292148 / 74.4
expense_report0.38 / 0.320.44 / 0.351.27 / 0.430.36 / 0.52
order_cleanup0.42 / 0.330.50 / 0.431.32 / 0.510.44 / 0.65
api_report0.72 / 0.500.80 / 0.501.31 / 0.490.43 / 0.55
capacity_planning44.0 / 42.943.0 / 42.110.8 / 9.924.33 / 3.50
perf_json_loads1.25 / 1.011.39 / 1.132.36 / 1.541.19 / 1.09
stdout_lines2.40 / 2.472.63 / 2.514.71 / 3.594.99 / 3.81
text_json_parse_medium11.0 / 9.0111.5 / 9.2510.7 / 9.647.25 / 6.32
perf_barnes_hut3870 / 39104240 / 4270748 / 749550 / 494
game_regex_dnafailed / failedfailed / failed225 / 221267 / 161
memory_customer_records398 / 372422 / 356171 / 173214 / 131
text_csv_aggregate_medium394 / 385410 / 39882.4 / 82.5110 / 64.4
perf_json_dumps9.81 / 8.6110.9 / 9.8211.8 / 10.721.3 / 12.9
memory_string_list_short228 / 210218 / 19299.3 / 94.1124 / 75.7
text_json_lines_medium13.2 / 13.113.8 / 13.516.3 / 15.818.7 / 13.5
memory_string_index_short104 / 94.2105 / 91.377.5 / 68.795.8 / 57.9
text_json_transform_medium13.3 / 11.113.4 / 11.611.4 / 10.912.4 / 9.76
text_line_logs_small0.44 / 0.380.45 / 0.430.41 / 0.420.53 / 0.53
text_json_parse_small0.64 / 0.420.67 / 0.470.34 / 0.360.33 / 0.47
game_meteor_contest325 / 330339 / 33986.6 / 84.6125 / 82.2
text_json_transform_small0.74 / 0.540.82 / 0.550.47 / 0.500.48 / 0.61
memory_string_list_long297 / 279270 / 235108 / 102144 / 103
text_json_lines_small0.79 / 0.570.83 / 0.640.55 / 0.560.65 / 0.64
game_pidigitsn/an/a145 / 144223 / 164
text_csv_cleanup_medium770 / 759826 / 792155 / 152251 / 188
memory_string_index_long143 / 129141 / 11686.5 / 76.9112 / 106
text_line_logs_medium14.7 / 14.514.1 / 13.98.57 / 7.9717.9 / 11.5
text_regex_logs_medium23.4 / 22.924.0 / 23.515.2 / 14.454.6 / 24.8
text_regex_logs_small1.14 / 0.831.13 / 0.810.61 / 0.511.85 / 0.84
ticket_search23.0 / 22.123.5 / 22.89.70 / 8.5820.0 / 15.2
text_csv_aggregate_small4.33 / 4.194.98 / 4.381.61 / 1.617.44 / 5.92
perf_unpack_sequence105 / 10579.9 / 77.017.0 / 15.158.2 / 39.6
text_csv_cleanup_small7.99 / 7.898.64 / 8.192.37 / 2.3813.9 / 10.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
api_report20.019.820.066.0
order_cleanup19.820.020.065.8
game_fannkuch20.019.820.0295
capacity_planning19.919.820.070.7
text_json_lines_small20.019.920.067.7
text_csv_cleanup_small20.019.920.079.5
text_json_parse_small20.019.920.067.4
perf_barnes_hut20.020.020.0301
text_csv_aggregate_small19.919.920.073.3
game_nbody20.019.920.077.6
game_spectral_norm19.920.020.0114
text_regex_logs_medium23.022.122.1322
expense_report20.019.920.065.7
stdout_lines20.020.020.069.7
perf_json_dumps19.920.019.991.2
game_meteor_contest20.020.020.0240
perf_unpack_sequence20.020.020.0137
text_json_transform_small20.020.020.067.5
ticket_search20.020.020.084.5
text_json_transform_medium25.524.224.2227
text_regex_logs_small20.020.020.068.5
portfolio_risk20.020.020.092.4
text_line_logs_medium24.224.224.2241
text_line_logs_small20.020.020.067.5
text_json_lines_medium24.624.624.5238
perf_json_loads20.019.919.866.9
text_json_parse_medium25.624.424.2222
memory_string_index_long71.969.653.9236
memory_string_index_short61.258.242.3209
text_csv_cleanup_medium55.151.533.8397
text_csv_aggregate_medium47.944.027.9357
memory_string_list_long11711469.7322
memory_string_list_short94.191.446.4269
perf_float63.059.729.293.4
memory_customer_records16315968.0373
game_pidigitsn/an/a19.9295
game_regex_dnafailedfailed19.8328