Application benchmarks

CPU
AMD EPYC 9V45 96-Core Processor · 4 logical CPUs
OS
Linux-6.17.0-1022-azure-x86_64-with-glibc2.39
Samples
20
Run duration
11m 19s
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 CPython · largest improvement first; click headers to reorder

Monty 1.1.0 · CPython 3.14.8 · 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

cpython · cpython · Python 3.14.8
/opt/hostedtoolcache/Python/3.14.8/x64/bin/python3.14
Source revision and compiler flags unverified
a5230d8adbd26c2185d77fb003597c4ee9c44c2369fc179122ff7c3a3a58ae59

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

MontyCPythonPyPy
1.468.5616.4

Runtime · ms · one-shot / repeated

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

WorkloadMontyCPythonPyPy
portfolio_risk95.9 / 10145.9 / 47.27.19 / 8.52
game_nbody445 / 46067.4 / 69.811.0 / 11.8
game_spectral_norm359 / 37268.6 / 69.813.1 / 14.5
game_fannkuchn/a242 / 26952.4 / 55.2
expense_report0.33 / 0.271.11 / 0.380.26 / 0.43
capacity_planning41.2 / 41.810.5 / 9.572.64 / 3.05
api_report0.65 / 0.381.16 / 0.480.30 / 0.55
perf_float234 / 21153.1 / 52.414.2 / 15.1
order_cleanup0.41 / 0.331.17 / 0.490.31 / 0.53
perf_json_loads1.18 / 0.902.10 / 1.390.72 / 1.04
perf_barnes_hut4050 / 4220622 / 635388 / 315
game_regex_dnan/a181 / 182131 / 99.2
stdout_lines2.09 / 2.043.64 / 2.573.76 / 3.24
memory_string_list_short198 / 18683.5 / 81.652.5 / 71.5
perf_json_dumps8.64 / 7.1811.7 / 11.112.9 / 10.6
perf_gc_traversaln/a13.6 / 14.79.04 / 1190
memory_string_index_short99.1 / 91.661.3 / 62.568.1 / 41.7
memory_customer_records455 / 420144 / 154135 / 103
game_pidigitsn/a142 / 14898.2 / 103
text_json_parse_medium10.0 / 7.639.46 / 9.676.61 / 7.32
text_csv_aggregate_medium384 / 38271.3 / 72.060.5 / 51.2
memory_string_index_long135 / 12070.7 / 71.677.1 / 50.9
text_json_lines_medium12.1 / 12.315.2 / 15.311.3 / 11.9
text_json_parse_small0.55 / 0.300.29 / 0.360.21 / 0.37
text_json_lines_small0.67 / 0.420.48 / 0.550.43 / 0.55
text_json_transform_small0.66 / 0.390.43 / 0.510.33 / 0.47
game_meteor_contestn/a69.5 / 70.553.5 / 54.1
text_csv_cleanup_medium770 / 784137 / 142115 / 115
memory_string_list_long262 / 23492.0 / 88.975.1 / 78.8
text_json_transform_medium12.3 / 10.210.2 / 10.69.60 / 10.2
text_line_logs_small0.42 / 0.390.32 / 0.380.35 / 0.44
text_regex_logs_medium23.8 / 23.312.8 / 12.516.1 / 14.4
text_regex_logs_small1.05 / 0.700.53 / 0.491.53 / 0.68
text_line_logs_medium17.1 / 17.77.30 / 6.6610.7 / 10.9
ticket_search23.5 / 24.57.90 / 7.5212.2 / 13.3
perf_unpack_sequence217 / 22413.6 / 12.731.1 / 33.8
text_csv_aggregate_small3.97 / 3.921.42 / 1.514.69 / 5.36
text_csv_cleanup_small7.29 / 7.402.08 / 2.208.30 / 9.78

Peak RSS · MiB · one-shot

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

WorkloadMontyCPythonPyPy
perf_json_dumps19.419.560.6
text_csv_aggregate_small19.419.458.6
text_json_parse_medium23.623.7126
capacity_planning19.419.558.2
game_spectral_norm19.419.559.2
ticket_search19.419.460.3
text_csv_cleanup_small19.419.459.2
text_json_transform_medium23.723.8126
text_json_lines_small19.419.458.0
perf_unpack_sequence19.519.562.7
perf_json_loads19.519.557.5
stdout_lines19.519.559.5
game_nbody19.519.558.8
api_report19.519.557.5
order_cleanup19.419.457.4
text_line_logs_medium23.623.6125
text_json_parse_small19.419.457.9
text_line_logs_small19.419.457.9
text_json_lines_medium24.224.1124
perf_barnes_hut19.419.488.9
expense_report19.519.457.5
text_regex_logs_medium21.621.5127
text_regex_logs_small19.519.458.2
portfolio_risk19.419.358.5
text_json_transform_small19.519.357.9
memory_string_index_long67.553.3124
memory_string_index_short56.041.7108
text_csv_cleanup_medium49.933.1147
text_csv_aggregate_medium42.227.4149
memory_string_list_long11269.2125
memory_string_list_short89.545.999.6
memory_customer_records15667.4134
perf_float57.828.469.9
game_fannkuchn/a19.458.7
game_meteor_contestn/a19.460.9
game_pidigitsn/a19.565.0
perf_gc_traversaln/a19.566.1
game_regex_dnan/a19.487.0