Open
Description
Writing this for the history. Maybe these results will be interesting to someone who trying to achieve better performance with quick-xml
.
I test Profile-Guided Optimization (PGO) on different kinds of software - the current results are here(with a lot of other PGO-related information). That's why I tried to optimize quick-xml
with PGO too.
Test setup
My test setup is:
- Macbook M1 Pro
- macOS Ventura 13.4
- Rustc version:
rustc 1.71.1 (eb26296b5 2023-08-03)
quick-xml
version: 1be35e1 commit from themaster
branch
Benchmarks
As a benchmark, I used built-in into the quick-xml
crate benchmarks. For PGO optimization I use cargo-pgo.
Results
- Instrumented run compared to Release: https://pastebin.com/CAYJUrQw
- PGO-optimized compared to Release: https://pastebin.com/hkVziJcZ
So as you see, for some workloads the performance has improved, for others - regressed. So you can estimate PGO benefits for your scenarios.