Skip to content

Instantly share code, notes, and snippets.

@zamazan4ik
Created March 17, 2024 00:36
Show Gist options
  • Save zamazan4ik/5a82715d041e849d73dc9dfb1f814544 to your computer and use it in GitHub Desktop.
Save zamazan4ik/5a82715d041e849d73dc9dfb1f814544 to your computer and use it in GitHub Desktop.
ada-url Rust: PGO-optimized version
taskset -c 0 cargo pgo optimize bench
[2024-03-16T23:55:17Z INFO cargo_pgo::pgo::optimize] Found 2 PGO profile files with total size 1.18 MiB at /home/zamazan4ik/open_source/ada-url-rust/target/pgo-profiles.
[2024-03-16T23:55:17Z INFO cargo_pgo::pgo::optimize] Merged PGO profile(s) to /home/zamazan4ik/open_source/ada-url-rust/target/pgo-profiles/merged-2a90bb2d7b0590030b9ccdea79fbd12c577a9353ce0de52f536aaefd867cb4fc.profdata.
Compiling serde v1.0.188
Compiling tinyvec_macros v0.1.1
Compiling tinyvec v1.6.0
Compiling either v1.9.0
Compiling ciborium-io v0.2.1
Compiling ryu v1.0.15
Compiling linux-raw-sys v0.4.5
Compiling itoa v1.0.9
Compiling bitflags v2.4.0
Compiling clap_lex v0.5.1
Compiling anstyle v1.0.2
Compiling regex-syntax v0.8.2
Compiling half v1.8.2
Compiling ciborium-ll v0.2.1
Compiling regex-automata v0.4.3
Compiling clap_builder v4.4.1
Compiling rustix v0.38.10
Compiling serde_json v1.0.105
Compiling itertools v0.10.5
Compiling unicode-normalization v0.1.22
Compiling unicode-bidi v0.3.13
Compiling same-file v1.0.6
Compiling cast v0.3.0
Compiling percent-encoding v2.3.0
Compiling form_urlencoded v1.2.0
Compiling criterion-plot v0.5.0
Compiling walkdir v2.3.3
Compiling idna v0.4.0
Compiling num-traits v0.2.16
Compiling ada-url v2.2.1 (/home/zamazan4ik/open_source/ada-url-rust)
Compiling tinytemplate v1.2.1
Compiling is-terminal v0.4.9
Compiling clap v4.4.1
Compiling regex v1.10.2
Compiling ciborium v0.2.1
Compiling anes v0.1.6
Compiling once_cell v1.18.0
Compiling oorandom v11.1.3
Compiling criterion v0.5.1
Compiling url v2.4.1
PGO optimized build successfully finished.
Finished bench [optimized] target(s) in 44.20s
Running unittests src/lib.rs (target/x86_64-unknown-linux-gnu/release/deps/ada_url-adb87120f91501d1)
running 11 tests
test idna::tests::ascii_should_work ... ignored
test idna::tests::unicode_should_work ... ignored
test test::can_parse_simple_url ... ignored
test test::scheme_types ... ignored
test test::should_clone ... ignored
test test::should_compare_urls ... ignored
test test::should_display_serialization ... ignored
test test::should_order_alphabetically ... ignored
test test::should_parse_simple_url ... ignored
test test::try_from_err ... ignored
test test::try_from_ok ... ignored
test result: ok. 0 passed; 0 failed; 11 ignored; 0 measured; 0 filtered out; finished in 0.00s
Running bench/parse.rs (target/x86_64-unknown-linux-gnu/release/deps/parse-8c2517cab43aef8c)
Benchmarking parse/ada_url
Benchmarking parse/ada_url: Warming up for 3.0000 s
Benchmarking parse/ada_url: Collecting 100 samples in estimated 5.0081 s (3.0M iterations)
Benchmarking parse/ada_url: Analyzing
parse/ada_url time: [1.6947 µs 1.6955 µs 1.6962 µs]
thrpt: [454.28 MiB/s 454.47 MiB/s 454.69 MiB/s]
change:
time: [-28.927% -28.854% -28.785%] (p = 0.00 < 0.05)
thrpt: [+40.420% +40.556% +40.701%]
Performance has improved.
Benchmarking parse/url
Benchmarking parse/url: Warming up for 3.0000 s
Benchmarking parse/url: Collecting 100 samples in estimated 5.0115 s (747k iterations)
Benchmarking parse/url: Analyzing
parse/url time: [6.7299 µs 6.7327 µs 6.7354 µs]
thrpt: [114.41 MiB/s 114.45 MiB/s 114.50 MiB/s]
change:
time: [-24.164% -24.124% -24.086%] (p = 0.00 < 0.05)
thrpt: [+31.728% +31.795% +31.863%]
Performance has improved.
Found 2 outliers among 100 measurements (2.00%)
2 (2.00%) high mild
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment