Profile-Guided Optimization (PGO) results

Open
#632 1 comment 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
1/5
Estimated time
Under an hour
Newbie friendliness
28/100
Issue type
Documentation
Clarity
Clearly specified
Activity status
Stale
Tech stack
rust
Domain
performance

Research direction

The issue records PGO benchmark results and links to the comparisons on Pastebin and the cargo-pgo project. Read those results and the linked PGO overview to understand the reported gains and regressions. The post is already complete as a historical record, so there is no implementation task or further done condition specified.

Written by the indexing model from the issue text.

Description

documentation help wanted

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:

Benchmarks

As a benchmark, I used built-in into the quick-xml crate benchmarks. For PGO optimization I use cargo-pgo.

Results

So as you see, for some workloads the performance has improved, for others - regressed. So you can estimate PGO benefits for your scenarios.

Dominant language
Rust
Stars
1.6k
Forks
299
Avg merge
2d 4h
Merged PRs (30d)
9

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from tafia/quick-xml

All issues in tafia/quick-xml

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.