C++ Benchmark Performance Report

Generated on 2026-02-06 20:01:02

How to Generate This Report

cd benchmarks/cpp_benchmark/build
./fory_benchmark --benchmark_format=json --benchmark_out=benchmark_results.json
cd ..
python benchmark_report.py --json-file build/benchmark_results.json --output-dir report

Hardware & OS Info

KeyValue
OSDarwin 24.6.0
Machinearm64
Processorarm
CPU Cores (Physical)12
CPU Cores (Logical)12
Total RAM (GB)48.0
Benchmark Date2026-02-06T20:00:20+08:00
CPU Cores (from benchmark)12

Benchmark Plots

Mediacontent

Mediacontentlist

Sample

Samplelist

Struct

Structlist

Throughput

Benchmark Results

Timing Results (nanoseconds)

DatatypeOperationFory (ns)Protobuf (ns)Faster
MediacontentSerialize512.01990.9Fory (3.9x)
MediacontentDeserialize1674.12516.6Fory (1.5x)
MediacontentlistSerialize2261.010804.2Fory (4.8x)
MediacontentlistDeserialize6943.513375.9Fory (1.9x)
SampleSerialize241.7309.4Fory (1.3x)
SampleDeserialize1055.81361.5Fory (1.3x)
SamplelistSerialize963.211716.7Fory (12.2x)
SamplelistDeserialize5295.912162.2Fory (2.3x)
StructSerialize117.1169.6Fory (1.4x)
StructDeserialize138.6156.2Fory (1.1x)
StructlistSerialize308.41299.4Fory (4.2x)
StructlistDeserialize706.21188.0Fory (1.7x)

Throughput Results (ops/sec)

DatatypeOperationFory TPSProtobuf TPSFaster
MediacontentSerialize1,952,940502,295Fory (3.9x)
MediacontentDeserialize597,343397,356Fory (1.5x)
MediacontentlistSerialize442,27792,557Fory (4.8x)
MediacontentlistDeserialize144,02074,761Fory (1.9x)
SampleSerialize4,138,0373,232,073Fory (1.3x)
SampleDeserialize947,188734,472Fory (1.3x)
SamplelistSerialize1,038,23685,348Fory (12.2x)
SamplelistDeserialize188,82582,222Fory (2.3x)
StructSerialize8,542,3135,896,325Fory (1.4x)
StructDeserialize7,217,5416,403,969Fory (1.1x)
StructlistSerialize3,242,105769,562Fory (4.2x)
StructlistDeserialize1,416,005841,739Fory (1.7x)

Serialized Data Sizes (bytes)

DatatypeForyProtobuf
Struct5861
Sample446375
MediaContent365301
StructList184315
SampleList19801890
MediaContentList15351520