Serialization benchmark results: hardware-specific snapshot (not a regression baseline)

Environment

Python
3.14.7 (64-bit) (cpython)
Platform
Linux-6.17.0-1022-azure-x86_64-with-glibc2.39
CPU model
AMD EPYC 7763 64-Core Processor
CPU count
4
Git revision
ce8d32b0ca7490ced179293369ce0daa03e88322
Benchmark version
0.1.0
GC policy
enabled
Run UTC
2026-09-20T21:15:40.082583+00:00
Unit
second

Primitive / dump_many / batch 100 / dataclass

AdapterVersionMeanStd devOperations/sSamplesPrereleaseSpeed vs baseline (higher is faster)
Adaptix 3.0 beta3.0.0b12494.379 µs10.6218 µs2022.74120pre-release0.56x
cattrs26.2.0342.202 µs4.074 µs2922.251200.81x
dataclasses.asdict3.14.72.26202 ms23.3214 µs442.0821200.12x
Django REST Framework3.18.05.49781 ms116.544 µs181.8911200.05x
Handwritten3.14.7277.237 µs4.93405 µs3607.021201.00x
Marshmallow4.3.16.53307 ms62.2435 µs153.0671200.04x
mashumaro3.22274.437 µs6.33518 µs3643.831201.01x
msgspec0.21.1305.307 µs5.14207 µs3275.41200.91x
Pydantic v22.13.5539.135 µs8.00062 µs1854.821200.51x
serpyco-rs1.22.0287.95 µs5.10649 µs3472.821200.96x

Primitive / dump_one / batch 1 / dataclass

AdapterVersionMeanStd devOperations/sSamplesPrereleaseSpeed vs baseline (higher is faster)
Adaptix 3.0 beta3.0.0b124.28196 µs63.4622 ns233538120pre-release0.51x
cattrs26.2.03.08328 µs55.8683 ns3243301200.71x
dataclasses.asdict3.14.721.843 µs432.864 ns45781.31200.10x
Django REST Framework3.18.053.6616 µs626.992 ns18635.31200.04x
Handwritten3.14.72.1922 µs62.7735 ns4561631201.00x
Marshmallow4.3.165.0563 µs1.37576 µs15371.31200.03x
mashumaro3.222.32811 µs54.0659 ns4295331200.94x
msgspec0.21.12.59241 µs54.3215 ns3857421200.85x
Pydantic v22.13.55.61991 µs99.0672 ns1779391200.39x
serpyco-rs1.22.02.46027 µs72.2843 ns4064601200.89x

Primitive / load_many / batch 100 / dataclass

AdapterVersionMeanStd devOperations/sSamplesPrereleaseSpeed vs baseline (higher is faster)
Adaptix 3.0 beta3.0.0b12752.139 µs8.43536 µs1329.54120pre-release1.18x
cattrs26.2.01.02493 ms15.3763 µs975.6731200.86x
Django REST Framework3.18.017.1821 ms249.719 µs58.20011200.05x
Handwritten3.14.7886.348 µs36.6135 µs1128.231201.00x
Marshmallow4.3.122.8918 ms440.118 µs43.68381200.04x
mashumaro3.22560.546 µs6.93689 µs1783.981201.58x
msgspec0.21.1354.034 µs4.11348 µs2824.591202.50x
Pydantic v22.13.51.08105 ms19.6991 µs925.0241200.82x
serpyco-rs1.22.0257.76 µs7.45228 µs3879.581203.44x

Primitive / load_one / batch 1 / dataclass

AdapterVersionMeanStd devOperations/sSamplesPrereleaseSpeed vs baseline (higher is faster)
Adaptix 3.0 beta3.0.0b127.57047 µs96.5444 ns132092120pre-release1.14x
cattrs26.2.010.0999 µs128.94 ns99010.41200.86x
Django REST Framework3.18.0170.764 µs4.23983 µs5856.041200.05x
Handwritten3.14.78.64844 µs210.654 ns1156281201.00x
Marshmallow4.3.1233.326 µs4.48429 µs4285.841200.04x
mashumaro3.225.64426 µs81.6289 ns1771711201.53x
msgspec0.21.14.44578 µs63.1647 ns2249331201.95x
Pydantic v22.13.57.32424 µs174.229 ns1365331201.18x
serpyco-rs1.22.02.63189 µs66.4533 ns3799561203.29x