Skip to content

Latest commit

 

History

History
22 lines (14 loc) · 1.13 KB

serdebench.md

File metadata and controls

22 lines (14 loc) · 1.13 KB

PGO benchmarks for different serialization/deserialization libraries with https://github.com/llogiq/serdebench benchsuite

Test environment

  • Macbook M1 Pro (6+2 CPU, 16 Gib RAM, 512 SSD)
  • macOS 13.6 Ventura
  • Rustc version: rustc 1.77.0-nightly (d78329b92 2024-01-13)
  • serdebench version: 4cd6b3404758dff633615029b790f32859bf4e0c commit from the master branch

Benchmark setup

Release results are collected with cargo +nightly bench. PGO optimization is done with cargo-pgo. PGO instrumentation is done with cargo +nightly pgo bench. PGO optimization is done with cargo +nightly pgo optimize bench.

Results

I got the following results:

According to the tests, PGO helps with optimizing performance in many cases. However, in the benchmarks, there are regressions with PGO in some rare scenarios.