Application benchmarks

CPU
AMD EPYC 9V74 80-Core Processor · 4 logical CPUs
OS
Linux-7.0.0-1017-azure-x86_64-with-glibc2.39
Samples
10
Parallel jobs
1
Run duration
16m 7s
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.1 · PyPy 8.0.1

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

python3.15 · cpython · Python 3.15.1
/opt/hostedtoolcache/Python/3.15.1/x64/bin/python3.15
Source revision and compiler flags unverified
3359482397c7a8e9b84606a9d825c3b4e2c2b89ff622d8ddb9a84e939699180a

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

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_nbody514 / 513460 / 463118 / 11215.0 / 15.7
portfolio_risk132 / 132122 / 12272.1 / 67.910.8 / 11.6
game_spectral_norm506 / 507503 / 501111 / 10418.3 / 17.8
expense_report0.34 / 0.290.41 / 0.301.46 / 0.450.32 / 0.46
game_fannkuch1750 / 17601790 / 1770355 / 34977.1 / 77.1
capacity_planning54.2 / 52.455.0 / 53.115.4 / 13.43.58 / 3.84
api_report0.73 / 0.380.83 / 0.401.52 / 0.500.37 / 0.54
perf_float382 / 342424 / 37582.8 / 75.820.8 / 21.0
order_cleanup0.40 / 0.300.49 / 0.341.53 / 0.500.39 / 0.54
perf_json_loads1.39 / 0.971.54 / 1.102.85 / 1.630.98 / 1.13
game_regex_dnafailed / failedfailed / failed272 / 264180 / 133
perf_barnes_hut5490 / 55005840 / 5910989 / 945546 / 520
stdout_lines3.16 / 3.163.09 / 3.075.43 / 3.635.17 / 3.85
memory_string_list_short293 / 239281 / 235130 / 12077.8 / 85.4
memory_customer_records549 / 448566 / 526214 / 212176 / 132
text_csv_aggregate_medium567 / 551536 / 523112 / 10383.0 / 68.9
text_json_lines_medium15.8 / 15.417.9 / 17.521.7 / 20.314.7 / 17.3
text_json_parse_medium13.7 / 9.8415.0 / 11.012.4 / 10.38.93 / 8.87
memory_string_index_short146 / 123137 / 10993.5 / 81.3104 / 59.4
text_json_lines_small0.79 / 0.470.85 / 0.520.63 / 0.640.56 / 0.63
text_csv_cleanup_medium1100 / 11001060 / 1050205 / 196159 / 145
game_meteor_contest438 / 439454 / 45595.2 / 90.872.0 / 69.9
memory_string_list_long397 / 324381 / 306144 / 132114 / 132
text_json_transform_small0.76 / 0.420.83 / 0.460.54 / 0.530.43 / 0.52
text_json_parse_small0.66 / 0.350.71 / 0.360.36 / 0.370.30 / 0.41
text_line_logs_small0.43 / 0.390.47 / 0.430.41 / 0.440.46 / 0.52
perf_json_dumps13.9 / 11.314.2 / 11.614.8 / 12.817.7 / 14.4
game_pidigitsn/an/a170 / 170152 / 154
memory_string_index_long203 / 170195 / 158106 / 97.8117 / 89.2
text_json_transform_medium16.3 / 12.117.3 / 13.313.6 / 11.613.1 / 12.9
text_regex_logs_medium29.3 / 28.531.6 / 30.318.1 / 17.222.7 / 18.4
text_regex_logs_small1.20 / 0.771.28 / 0.830.70 / 0.582.04 / 0.86
text_line_logs_medium18.4 / 18.119.1 / 18.710.2 / 8.6814.0 / 14.4
ticket_search31.9 / 30.831.0 / 29.711.6 / 9.1716.3 / 16.4
perf_unpack_sequence127 / 12682.8 / 82.020.7 / 19.246.6 / 46.9
text_csv_aggregate_small6.02 / 5.735.78 / 5.492.07 / 1.986.35 / 6.64
text_csv_cleanup_small11.0 / 10.710.7 / 10.33.15 / 3.0011.5 / 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
game_spectral_norm19.919.819.959.4
text_json_transform_small19.819.919.958.2
text_regex_logs_medium24.222.022.2128
text_json_lines_medium24.524.524.6124
perf_json_loads19.919.819.957.9
text_csv_aggregate_small19.920.120.158.8
text_line_logs_medium24.424.224.4125
text_json_parse_medium28.924.224.3126
expense_report19.919.919.957.8
api_report19.919.919.957.9
text_csv_cleanup_small20.120.020.159.2
text_line_logs_small19.919.919.958.2
portfolio_risk19.919.919.958.6
text_regex_logs_small20.219.919.958.2
stdout_lines19.919.919.959.4
perf_barnes_hut20.819.919.989.0
capacity_planning21.119.919.958.5
perf_unpack_sequence20.120.020.063.1
game_nbody19.919.919.958.9
ticket_search19.919.919.960.2
game_fannkuch19.919.919.958.9
text_json_parse_small19.919.919.958.2
text_json_transform_medium27.924.324.3126
perf_json_dumps19.919.919.961.0
text_json_lines_small20.019.919.958.2
game_meteor_contest19.919.919.961.1
order_cleanup19.919.919.857.9
memory_string_index_long75.769.453.8124
memory_string_index_short64.657.942.2108
text_csv_cleanup_medium57.751.433.8147
text_csv_aggregate_medium49.443.828.0149
memory_string_list_long12111469.6125
memory_customer_records16715968.0134
memory_string_list_short96.091.546.399.7
perf_float64.359.629.370.2
game_pidigitsn/an/a19.964.9
game_regex_dnafailedfailed19.989.0