Skip to main content
Version: dev

Go Serialization Benchmark Report

Generated: 2026-05-08 17:55:12

Performance Chart

Throughput

System Information

  • OS: Darwin 24.6.0
  • Architecture: arm64
  • Python: 3.10.8

Performance Summary

Data TypeOperationFory (ops/s)Protobuf (ops/s)Msgpack (ops/s)Fory vs PBFory vs MP
NumericStructSerialize12.74M7.16M3.63M1.78x3.51x
NumericStructDeserialize10.63M8.40M1.78M1.27x5.98x
SampleSerialize7.16M2.53M646K2.84x11.10x
SampleDeserialize3.27M2.10M343K1.56x9.54x
MediaContentSerialize3.74M1.75M1.14M2.14x3.27x
MediaContentDeserialize2.03M1.23M646K1.66x3.15x
NumericStructListSerialize1.10M386K201K2.84x5.44x
NumericStructListDeserialize1.09M368K103K2.96x10.54x
SampleListSerialize496K126K36K3.93x13.83x
SampleListDeserialize195K96K17K2.04x11.73x
MediaContentListSerialize250K91K57K2.73x4.38x
MediaContentListDeserialize112K74K31K1.53x3.65x

Detailed Timing (ns/op)

Data TypeOperationForyProtobufMsgpack
NumericStructSerialize78.5139.6275.5
NumericStructDeserialize94.0119.0562.5
SampleSerialize139.6395.91549.0
SampleDeserialize306.0475.92919.0
MediaContentSerialize267.3571.6875.1
MediaContentDeserialize492.4815.81549.0
NumericStructListSerialize912.82594.04970.0
NumericStructListDeserialize919.92721.09698.0
SampleListSerialize2018.07927.027909.0
SampleListDeserialize5126.010460.060118.0
MediaContentListSerialize4006.010939.017553.0
MediaContentListDeserialize8893.013588.032439.0

Serialized Data Sizes (bytes)

Data TypeForyProtobufMsgpack
NumericStruct789388
Sample445375524
MediaContent340301400
NumericStructList81919001766
SampleList7599756010486
MediaContentList577460808006