tree: 2e1953a43b61daa998c2b8555a1d25c0d4bfbf0e [path history] [tgz]
  1. mediacontent.png
  2. mediacontentlist.png
  3. README.md
  4. REPORT.md
  5. sample.png
  6. samplelist.png
  7. struct.png
  8. structlist.png
  9. throughput.png
docs/benchmarks/cpp/README.md

C++ Benchmark Performance Report

Generated on 2026-02-19 10:20:08

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-19T10:19:31+08:00
CPU Cores (from benchmark)12

Benchmark Plots

All class-level plots below show throughput (ops/sec).

Throughput

Mediacontent

Mediacontentlist

Sample

Samplelist

Struct

Structlist

Benchmark Results

Timing Results (nanoseconds)

DatatypeOperationfory (ns)protobuf (ns)msgpack (ns)Fastest
MediaContentSerialize120.4863.8281.1fory
MediaContentDeserialize397.91197.92768.6fory
MediaContentListSerialize480.94744.31407.5fory
MediaContentListDeserialize2022.16426.013595.9fory
SampleSerialize72.892.0296.1fory
SampleDeserialize328.2641.22642.9fory
SampleListSerialize287.34761.21506.7fory
SampleListDeserialize1711.84875.213232.0fory
StructSerialize27.332.455.2fory
StructDeserialize21.425.0747.3fory
StructListSerialize69.4419.8285.9fory
StructListDeserialize129.4334.43385.8fory

Throughput Results (ops/sec)

DatatypeOperationfory TPSprotobuf TPSmsgpack TPSFastest
MediaContentSerialize8,306,1281,157,7123,557,700fory
MediaContentDeserialize2,513,488834,808361,190fory
MediaContentListSerialize2,079,229210,777710,492fory
MediaContentListDeserialize494,523155,61773,551fory
SampleSerialize13,745,04110,871,7873,377,292fory
SampleDeserialize3,047,2241,559,633378,369fory
SampleListSerialize3,481,110210,029663,693fory
SampleListDeserialize584,168205,12175,574fory
StructSerialize36,672,58130,900,03918,114,682fory
StructDeserialize46,637,12439,947,5571,338,225fory
StructListSerialize14,419,5482,381,8863,497,903fory
StructListDeserialize7,729,1732,990,652295,353fory

Serialized Data Sizes (bytes)

Datatypeforyprotobufmsgpack
Struct586155
Sample446375530
MediaContent365301480
StructList184315289
SampleList198018902664
MediaContentList153515202421