Closed kkebo closed 2 months ago
refs #61
This improves performance significantly. Some results are finally as fast as html5ever.
=================================================== Comparing results between 'main' and 'Current_run' =================================================== Host 'Brown-rhinoceros-beetle' with 8 'aarch64' processors with 7 GB memory, running: #1 SMP PREEMPT_DYNAMIC Wed Apr 24 00:11:34 UTC 2024 MyBenchmark ============================================================================================================================ ---------------------------------------------------------------------------------------------------------------------------- lipsum metrics ---------------------------------------------------------------------------------------------------------------------------- ╒══════════════════════════════════════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╕ │ Time (wall clock) (μs) * │ p0 │ p25 │ p50 │ p75 │ p90 │ p99 │ p100 │ Samples │ ╞══════════════════════════════════════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╡ │ main │ 92 │ 92 │ 92 │ 93 │ 93 │ 99 │ 99 │ 100 │ ├──────────────────────────────────────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ │ Current_run │ 53 │ 53 │ 53 │ 53 │ 53 │ 56 │ 56 │ 100 │ ├──────────────────────────────────────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ │ Δ │ -39 │ -39 │ -39 │ -40 │ -40 │ -43 │ -43 │ 0 │ ├──────────────────────────────────────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ │ Improvement % │ 42 │ 42 │ 42 │ 43 │ 43 │ 43 │ 43 │ 0 │ ╘══════════════════════════════════════════╧═════════╧═════════╧═════════╧═════════╧═════════╧═════════╧═════════╧═════════╛ ---------------------------------------------------------------------------------------------------------------------------- lipsum-zh metrics ---------------------------------------------------------------------------------------------------------------------------- ╒══════════════════════════════════════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╕ │ Time (wall clock) (ns) * │ p0 │ p25 │ p50 │ p75 │ p90 │ p99 │ p100 │ Samples │ ╞══════════════════════════════════════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╡ │ main │ 11 │ 11 │ 11 │ 12 │ 12 │ 12 │ 12 │ 100 │ ├──────────────────────────────────────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ │ Current_run │ 7 │ 7 │ 7 │ 7 │ 7 │ 7 │ 7 │ 100 │ ├──────────────────────────────────────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ │ Δ │ -4 │ -4 │ -4 │ -5 │ -5 │ -5 │ -5 │ 0 │ ├──────────────────────────────────────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ │ Improvement % │ 36 │ 36 │ 36 │ 42 │ 42 │ 42 │ 42 │ 0 │ ╘══════════════════════════════════════════╧═════════╧═════════╧═════════╧═════════╧═════════╧═════════╧═════════╧═════════╛ ---------------------------------------------------------------------------------------------------------------------------- medium-fragment metrics ---------------------------------------------------------------------------------------------------------------------------- ╒══════════════════════════════════════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╕ │ Time (wall clock) (μs) * │ p0 │ p25 │ p50 │ p75 │ p90 │ p99 │ p100 │ Samples │ ╞══════════════════════════════════════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╡ │ main │ 130 │ 130 │ 130 │ 130 │ 132 │ 139 │ 141 │ 100 │ ├──────────────────────────────────────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ │ Current_run │ 122 │ 122 │ 122 │ 123 │ 124 │ 130 │ 130 │ 100 │ ├──────────────────────────────────────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ │ Δ │ -8 │ -8 │ -8 │ -7 │ -8 │ -9 │ -11 │ 0 │ ├──────────────────────────────────────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ │ Improvement % │ 6 │ 6 │ 6 │ 5 │ 6 │ 6 │ 8 │ 0 │ ╘══════════════════════════════════════════╧═════════╧═════════╧═════════╧═════════╧═════════╧═════════╧═════════╧═════════╛ ---------------------------------------------------------------------------------------------------------------------------- small-fragment metrics ---------------------------------------------------------------------------------------------------------------------------- ╒══════════════════════════════════════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╕ │ Time (wall clock) (μs) * │ p0 │ p25 │ p50 │ p75 │ p90 │ p99 │ p100 │ Samples │ ╞══════════════════════════════════════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╡ │ main │ 16 │ 16 │ 17 │ 17 │ 17 │ 18 │ 18 │ 100 │ ├──────────────────────────────────────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ │ Current_run │ 15 │ 15 │ 15 │ 15 │ 15 │ 16 │ 16 │ 100 │ ├──────────────────────────────────────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ │ Δ │ -1 │ -1 │ -2 │ -2 │ -2 │ -2 │ -2 │ 0 │ ├──────────────────────────────────────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ │ Improvement % │ 6 │ 6 │ 12 │ 12 │ 12 │ 11 │ 11 │ 0 │ ╘══════════════════════════════════════════╧═════════╧═════════╧═════════╧═════════╧═════════╧═════════╧═════════╧═════════╛ ---------------------------------------------------------------------------------------------------------------------------- strong metrics ---------------------------------------------------------------------------------------------------------------------------- ╒══════════════════════════════════════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╕ │ Time (wall clock) (μs) * │ p0 │ p25 │ p50 │ p75 │ p90 │ p99 │ p100 │ Samples │ ╞══════════════════════════════════════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╡ │ main │ 39 │ 39 │ 39 │ 39 │ 40 │ 42 │ 42 │ 100 │ ├──────────────────────────────────────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ │ Current_run │ 39 │ 39 │ 39 │ 39 │ 39 │ 42 │ 42 │ 100 │ ├──────────────────────────────────────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ │ Δ │ 0 │ 0 │ 0 │ 0 │ -1 │ 0 │ 0 │ 0 │ ├──────────────────────────────────────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ │ Improvement % │ 0 │ 0 │ 0 │ 0 │ 2 │ 0 │ 0 │ 0 │ ╘══════════════════════════════════════════╧═════════╧═════════╧═════════╧═════════╧═════════╧═════════╧═════════╧═════════╛ ---------------------------------------------------------------------------------------------------------------------------- tiny-fragment metrics ---------------------------------------------------------------------------------------------------------------------------- ╒══════════════════════════════════════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╕ │ Time (wall clock) (ns) * │ p0 │ p25 │ p50 │ p75 │ p90 │ p99 │ p100 │ Samples │ ╞══════════════════════════════════════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╡ │ main │ 488 │ 505 │ 507 │ 523 │ 564 │ 1072 │ 1120 │ 100 │ ├──────────────────────────────────────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ │ Current_run │ 405 │ 416 │ 434 │ 468 │ 470 │ 504 │ 505 │ 100 │ ├──────────────────────────────────────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ │ Δ │ -83 │ -89 │ -73 │ -55 │ -94 │ -568 │ -615 │ 0 │ ├──────────────────────────────────────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ │ Improvement % │ 17 │ 18 │ 14 │ 11 │ 17 │ 53 │ 55 │ 0 │ ╘══════════════════════════════════════════╧═════════╧═════════╧═════════╧═════════╧═════════╧═════════╧═════════╧═════════╛
Reported by octocov
refs #61
This improves performance significantly. Some results are finally as fast as html5ever.