崮生(子虚) 9d6e982682 perf(gsub-reachable): type1 fmt2 反转遍历方向
collectSubtableTargets 的 SingleSubst format2 原遍历 coverage gid
逐个查 reachable(inSubset=Set.has)。初夏明朝纯标点实测 fmt2 covLen
合计 9180 gid/round,但 reachable 仅 53 → 命中率 <4%,9180 次 Set.has
几乎全 miss。

反转:遍历 reachable(小集合)二分查找 covGids(按 gid 升序,fmt1 list
/ fmt2 range 展开均天然排序)得 index,命中则读 gidArray[i]。遍历量从
covGids.length 降到 reachable.size。

A/B(3000 次 p50):
- 初夏标点 129→105μs(-19%)
- 初夏8字 64→58μs(-9%)
- 霞鹜标点 13→11μs(-13%)
- 霞鹜8字 7.8→6.6μs(-15%)

reachable 集合 sha256 全部一致,基准测试 SSIM 全不变。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-24 17:03:26 +08:00
..
2026-04-08 22:05:17 +08:00
2024-08-19 18:10:09 +08:00