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
10
Parallel jobs
1
Run duration
19m 21s
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.4.0 · @main: Monty 1.4.0 · Python 3.15: CPython 3.15.2 · PyPy 8.0.0

Runtimes and build details

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

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

python3.15 · cpython · Python 3.15.2
/opt/hostedtoolcache/Python/3.15.2/x64/bin/python3.15
Source revision and compiler flags unverified
2c54590c63d1ccaed1fdb78b62a413b7af41361eecbf45eb61698562e0f59e17

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

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
portfolio_risk159 / 161150 / 15191.9 / 88.812.7 / 13.5
game_nbody616 / 615586 / 587137 / 13319.4 / 19.1
game_spectral_norm602 / 602599 / 598133 / 13022.6 / 22.0
game_fannkuch2100 / 20902180 / 2160450 / 44786.6 / 86.3
expense_report0.42 / 0.340.46 / 0.371.80 / 0.560.45 / 0.56
perf_float470 / 428521 / 45697.0 / 92.324.9 / 21.3
capacity_planning65.7 / 63.766.6 / 64.818.4 / 16.24.48 / 4.42
order_cleanup0.48 / 0.360.54 / 0.421.81 / 0.600.52 / 0.63
api_report0.84 / 0.480.94 / 0.491.82 / 0.600.52 / 0.63
perf_json_loads1.65 / 1.271.82 / 1.383.48 / 2.041.30 / 1.37
game_regex_dnafailed / failedfailed / failed322 / 317217 / 155
stdout_lines3.82 / 4.104.24 / 4.567.20 / 5.226.61 / 4.80
perf_barnes_hut6690 / 67007280 / 72701230 / 1200721 / 642
memory_string_list_short340 / 297327 / 271161 / 15486.5 / 101
memory_customer_records606 / 509582 / 485267 / 261203 / 146
text_csv_aggregate_medium676 / 653635 / 616140 / 12997.5 / 79.1
memory_string_index_short164 / 142160 / 130113 / 105109 / 67.4
text_json_parse_medium16.1 / 12.217.1 / 12.816.4 / 14.110.8 / 10.9
text_json_lines_medium20.5 / 20.622.6 / 21.827.0 / 25.818.9 / 18.8
memory_string_list_long454 / 390460 / 381169 / 163121 / 151
text_csv_cleanup_medium1330 / 13101260 / 1230263 / 256196 / 189
game_meteor_contest526 / 529543 / 542122 / 11892.0 / 87.3
text_json_lines_small0.95 / 0.631.02 / 0.710.79 / 0.810.75 / 0.81
text_json_transform_small0.91 / 0.591.00 / 0.580.69 / 0.700.56 / 0.65
perf_json_dumps16.6 / 14.217.4 / 15.419.3 / 17.223.6 / 19.7
text_json_parse_small0.78 / 0.480.83 / 0.500.48 / 0.490.40 / 0.55
text_line_logs_small0.53 / 0.500.57 / 0.560.57 / 0.590.64 / 0.68
game_pidigitsn/an/a205 / 204177 / 182
text_json_transform_medium19.4 / 15.020.3 / 16.017.6 / 15.515.9 / 15.5
memory_string_index_long229 / 193236 / 188125 / 113122 / 102
text_regex_logs_medium36.4 / 35.438.2 / 37.024.8 / 23.328.6 / 22.3
text_line_logs_medium23.5 / 23.324.0 / 23.714.3 / 12.917.6 / 16.9
text_regex_logs_small1.41 / 0.971.47 / 1.010.94 / 0.732.71 / 1.03
ticket_search38.0 / 36.239.1 / 36.914.3 / 11.320.7 / 19.7
perf_unpack_sequence164 / 163105 / 10426.0 / 21.558.2 / 58.7
text_csv_aggregate_small7.21 / 6.966.85 / 6.492.55 / 2.428.23 / 8.51
text_csv_cleanup_small13.5 / 13.112.9 / 12.43.81 / 3.7514.9 / 15.6

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_transform_small19.919.920.057.8
perf_barnes_hut19.819.919.988.8
order_cleanup19.819.819.957.4
api_report19.819.819.957.4
text_json_lines_small19.919.920.057.9
text_line_logs_medium24.324.224.3125
text_line_logs_small19.819.919.957.9
stdout_lines19.819.819.959.4
perf_unpack_sequence20.020.020.062.9
game_fannkuch19.919.819.958.7
perf_json_dumps19.919.819.860.6
text_json_lines_medium24.824.724.7124
game_meteor_contest19.819.919.960.9
game_spectral_norm19.919.919.959.2
text_json_transform_medium24.324.324.3126
game_nbody19.919.819.858.7
text_csv_cleanup_small20.020.020.059.1
text_regex_logs_small19.919.919.958.1
text_json_parse_medium24.324.324.3126
expense_report19.819.819.857.5
perf_json_loads19.919.919.957.4
text_regex_logs_medium22.222.122.1127
text_json_parse_small19.919.919.857.8
portfolio_risk19.919.919.858.6
text_csv_aggregate_small20.020.019.958.6
capacity_planning19.919.919.858.2
ticket_search19.919.919.860.2
memory_string_index_long68.067.853.7124
memory_string_index_short56.556.442.2108
text_csv_cleanup_medium50.349.733.7147
text_csv_aggregate_medium42.842.228.0149
memory_string_list_long11311369.6125
memory_string_list_short90.190.046.399.5
perf_float58.057.729.469.9
memory_customer_records15715767.8134
game_pidigitsn/an/a19.964.9
game_regex_dnafailedfailed19.987.1