Fory Dart Benchmark
August 3, 2026 ยท View on GitHub
This benchmark compares serialization and deserialization throughput for Apache Fory, Protocol Buffers, and JSON in Dart.
Throughput Plot

Hardware and Runtime Info
| Key | Value |
|---|---|
| Timestamp | 2026-05-08T08:23:10.201764Z |
| OS | Version 15.7.2 (Build 24G325) |
| Host | MacBook-Pro.local |
| CPU Cores (Logical) | 12 |
| Memory (GB) | 48.00 |
| Dart | 3.10.7 (stable) (Tue Dec 23 00:01:57 2025 -0800) on "macos_arm64" |
| Samples per case | 5 |
| Warmup per case (s) | 1.0 |
| Duration per case (s) | 1.5 |
Throughput Results
| Datatype | Operation | Fory TPS | Protobuf TPS | JSON TPS | Fastest |
|---|---|---|---|---|---|
| NumericStruct | Serialize | 9,007,809 | 1,582,003 | 774,574 | fory (5.69x) |
| NumericStruct | Deserialize | 9,039,403 | 3,343,459 | 1,391,036 | fory (2.70x) |
| Sample | Serialize | 2,434,800 | 538,385 | 133,800 | fory (4.52x) |
| Sample | Deserialize | 2,362,665 | 909,410 | 239,924 | fory (2.60x) |
| MediaContent | Serialize | 1,167,225 | 423,564 | 223,387 | fory (2.76x) |
| MediaContent | Deserialize | 1,987,141 | 770,107 | 254,156 | fory (2.58x) |
| NumericStructList | Serialize | 2,551,102 | 283,827 | 139,615 | fory (8.99x) |
| NumericStructList | Deserialize | 3,028,068 | 530,360 | 265,058 | fory (5.71x) |
| SampleList | Serialize | 568,937 | 47,426 | 25,386 | fory (12.00x) |
| SampleList | Deserialize | 542,871 | 108,349 | 48,058 | fory (5.01x) |
| MediaContentList | Serialize | 226,507 | 81,828 | 41,780 | fory (2.77x) |
| MediaContentList | Deserialize | 458,667 | 139,395 | 50,183 | fory (3.29x) |
Serialized Size (bytes)
| Datatype | Fory | Protobuf | JSON |
|---|---|---|---|
| NumericStruct | 78 | 93 | 159 |
| Sample | 445 | 377 | 791 |
| MediaContent | 362 | 307 | 619 |
| NumericStructList | 255 | 475 | 816 |
| SampleList | 1978 | 1900 | 3976 |
| MediaContentList | 1531 | 1550 | 3122 |