RS rust · a third-party validation run

unicode-rs/unicode-segmentation: −57.1% on its benchmarks, slower on other inputs

REGRESSED not sent upstream
HEADLINE
−57.1%
cumulative over three criterion benchmarks · 2.33× on those benchmarks
REGRESSION
slower
Non-ASCII unicode_words got up to 7.7% slower when re-measured on current upstream on 2026-11-03. The benchmarks missed this.

before → after

bar length is relative to the before value
three criterion benchmarks−57.1%
before
1.000×
after
0.429×

what changed

An ASCII fast path for split_word_bounds gave −90.53% on the one benchmark that can take it. The other kept change inlined the word_category lookup chain, with −7.44% on its best benchmark.

6 experiments

2
kept
2
discarded
2
failed

note — four experiments tested real ideas, and the report counts two more as failed. The run also found three defects in the harness, all since fixed. A slowdown on any real input counts as a failed optimization, so this run is marked regressed.

how it was measured

tool
criterion
rounds
6 rounds per side, sample size 10
verdict rule
KEEP needs p < 0.01667 on one benchmark and a geomean gain of at least 1%, with no regression past 5%.

LIMITS

Results hold only for the benchmarks a run measures. Inputs they do not cover can get slower. Check your hot paths before you merge.