Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save zamazan4ik/c5a8657218c22eeb4ac5edce0a6b3cf0 to your computer and use it in GitHub Desktop.
Save zamazan4ik/c5a8657218c22eeb4ac5edce0a6b3cf0 to your computer and use it in GitHub Desktop.
html5ever: PGO optimized compared to Release
taskset -c 0 cargo pgo optimize bench -- --workspace --all-features
Running benches/html5ever.rs (x86_64-unknown-linux-gnu/release/deps/html5ever-12e473d0184d56e7)
Benchmarking html tokenizing lipsum.html
Benchmarking html tokenizing lipsum.html: Warming up for 3.0000 s
Benchmarking html tokenizing lipsum.html: Collecting 100 samples in estimated 5.0315 s (621k iterations)
Benchmarking html tokenizing lipsum.html: Analyzing
html tokenizing lipsum.html
time: [7.9912 µs 8.0110 µs 8.0325 µs]
change: [-7.9016% -7.2849% -6.7210%] (p = 0.00 < 0.05)
Performance has improved.
Found 6 outliers among 100 measurements (6.00%)
1 (1.00%) low mild
2 (2.00%) high mild
3 (3.00%) high severe
Benchmarking html tokenizing lipsum-zh.html
Benchmarking html tokenizing lipsum-zh.html: Warming up for 3.0000 s
Benchmarking html tokenizing lipsum-zh.html: Collecting 100 samples in estimated 5.0097 s (919k iterations)
Benchmarking html tokenizing lipsum-zh.html: Analyzing
html tokenizing lipsum-zh.html
time: [5.4423 µs 5.4643 µs 5.4968 µs]
change: [-16.471% -16.183% -15.876%] (p = 0.00 < 0.05)
Performance has improved.
Found 5 outliers among 100 measurements (5.00%)
1 (1.00%) high mild
4 (4.00%) high severe
Benchmarking html tokenizing medium-fragment.html
Benchmarking html tokenizing medium-fragment.html: Warming up for 3.0000 s
Benchmarking html tokenizing medium-fragment.html: Collecting 100 samples in estimated 5.0414 s (187k iterations)
Benchmarking html tokenizing medium-fragment.html: Analyzing
html tokenizing medium-fragment.html
time: [26.983 µs 26.998 µs 27.015 µs]
change: [-32.875% -32.817% -32.759%] (p = 0.00 < 0.05)
Performance has improved.
Found 11 outliers among 100 measurements (11.00%)
10 (10.00%) high mild
1 (1.00%) high severe
Benchmarking html tokenizing small-fragment.html
Benchmarking html tokenizing small-fragment.html: Warming up for 3.0000 s
Benchmarking html tokenizing small-fragment.html: Collecting 100 samples in estimated 5.0029 s (1.9M iterations)
Benchmarking html tokenizing small-fragment.html: Analyzing
html tokenizing small-fragment.html
time: [2.6044 µs 2.6063 µs 2.6083 µs]
change: [-31.146% -31.047% -30.931%] (p = 0.00 < 0.05)
Performance has improved.
Found 3 outliers among 100 measurements (3.00%)
2 (2.00%) high mild
1 (1.00%) high severe
Benchmarking html tokenizing tiny-fragment.html
Benchmarking html tokenizing tiny-fragment.html: Warming up for 3.0000 s
Benchmarking html tokenizing tiny-fragment.html: Collecting 100 samples in estimated 5.0001 s (19M iterations)
Benchmarking html tokenizing tiny-fragment.html: Analyzing
html tokenizing tiny-fragment.html
time: [259.99 ns 260.15 ns 260.32 ns]
change: [-33.044% -32.984% -32.921%] (p = 0.00 < 0.05)
Performance has improved.
Found 4 outliers among 100 measurements (4.00%)
3 (3.00%) high mild
1 (1.00%) high severe
Benchmarking html tokenizing strong.html
Benchmarking html tokenizing strong.html: Warming up for 3.0000 s
Benchmarking html tokenizing strong.html: Collecting 100 samples in estimated 5.0089 s (283k iterations)
Benchmarking html tokenizing strong.html: Analyzing
html tokenizing strong.html
time: [17.712 µs 17.723 µs 17.735 µs]
change: [-35.246% -35.182% -35.123%] (p = 0.00 < 0.05)
Performance has improved.
Found 3 outliers among 100 measurements (3.00%)
2 (2.00%) low mild
1 (1.00%) high mild
Running unittests lib.rs (x86_64-unknown-linux-gnu/release/deps/markup5ever-ac843730594aaa0c)
running 6 tests
test interface::tests::ns_macro ... ignored
test util::buffer_queue::test::can_eat ... ignored
test util::buffer_queue::test::can_pop_except_set ... ignored
test util::buffer_queue::test::can_unconsume ... ignored
test util::buffer_queue::test::smoke_test ... ignored
test util::smallcharset::test::nonmember_prefix ... ignored
test result: ok. 0 passed; 0 failed; 6 ignored; 0 measured; 0 filtered out; finished in 0.00s
Running unittests lib.rs (x86_64-unknown-linux-gnu/release/deps/markup5ever_rcdom-232871f93bb23f48)
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
Running unittests src/lib.rs (x86_64-unknown-linux-gnu/release/deps/xml5ever-ac2136d9271b5ebe)
running 2 tests
test tokenizer::test::simple_namespace ... ignored
test tokenizer::test::wrong_namespaces ... ignored
test result: ok. 0 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 0.00s
Running benches/xml5ever.rs (x86_64-unknown-linux-gnu/release/deps/xml5ever-8ef3f8beda31ad7b)
Benchmarking xml tokenizing strong.xml
Benchmarking xml tokenizing strong.xml: Warming up for 3.0000 s
Benchmarking xml tokenizing strong.xml: Collecting 100 samples in estimated 5.0317 s (237k iterations)
Benchmarking xml tokenizing strong.xml: Analyzing
xml tokenizing strong.xml
time: [21.054 µs 21.064 µs 21.076 µs]
change: [-27.541% -27.482% -27.422%] (p = 0.00 < 0.05)
Performance has improved.
Found 4 outliers among 100 measurements (4.00%)
3 (3.00%) high mild
1 (1.00%) high severe
[2024-06-21T07:13:38Z WARN cargo_pgo::pgo::optimize] PGO profile data was not found for 9 functions.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment