HermitCrab analysis: combined stack cut work 14-64% on four real grammars, but R2 is closed; re-measure without it (unmeasured)

Đang mở
#611 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
48/100
Loại issue
Tài liệu
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
csharp
Lĩnh vực
performance

Hướng nghiên cứu

Start with docs/hermitcrab-2026-10-27-analysis-round.md at line 364 and review PR #578 for the stress grammars and the related work in #562, #567, and #566. Rerun the proposed stack on the current branches in work steps, excluding closed R2, and record the remeasured results and merge order here.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Claude-drafted.

The combined stack of #546, R1, R3, R2 and R5 cut work by 14.08% to 64.31% on four real grammars, but R2 is now closed, so the stack must be re-measured without it. Against master, less work (analysis events plus synthesis steps): Mbugwe 33.26%, Sena 64.31%, Aweti 27.58%, Amharic 14.08%, Indonesian equal, conformance 2.01%. The synthetic stress grammar bantu-tam: 89.64%. Parses equal master on every completed word. These numbers exist only in the retired PR #490 ledger. Measured before R2's witness-reuse fix.

R1 is the required-slot look-ahead (run on #546's shared walk via #577), R3 its ordered and anchored form (#576), R2 the root-substring prune (#572), R5 the edge-segment prefilter (#574).

Status: R2 (PR #572) closed 2026-10-29. Counting every unit of work as equal it added 7.7% to Sena's total work (closing comment on #572).

What we know:

  • R2 adds 4.74 points of Sena work on top of #546 with R3 (59.57% to 64.31% less). On Mbugwe R2 is off, so the stack equals #546 with R3.
  • R2 standalone on conformance was 15.3% more work (events, each probe counted as one event; ledger row 40).

Not known: the stack's numbers without R2.

Proposed change (C#): rerun the stack on the current branches in work steps, record the numbers in this issue, and list the merge order. Use PR #578 for the stress grammars.

Related: PRs #546, #577 (draft), #574, #578 (open); #576 (merged); #572 (closed); #562, #567, #566 (open). PanGloss: sillsdev/PanGloss#112 (the pointer issue for this one, open); sillsdev/PanGloss#66 (open) ports #546 and #566; sillsdev/PanGloss#23 (open) ports #572.

Next: rerun the stack without R2 in work steps and post the table here.


Evidence -- the full stack table

One census binary, one harness, one word set, every arm against master; census mode, 150 s per word; words aborted or erroring in any arm are dropped from all arms. "Less" is against master, per grammar.

grammar work unification matcher
Mbugwe (40 words) 33.26% 20.96% 38.31%
Sena (51) 64.31% 15.43% 22.45%
Aweti (99) 27.58% 45.64% 55.71%
Amharic (24) 14.08% 10.42% 14.96%
Indonesian (70) equal 5.49% 6.51%
conformance (1,452 runs) 2.01% 3.18% 8.69%
stress bantu-tam (60) 89.64% 64.03% 81.38%
stress early-lexicon (60) 67.72% 83.86% 87.06%

Parity: 0 differences in per-word parse signatures; 0 shadow violations on the full stack. The stack needs one test-only commit (11 toy-grammar tests set RootSubstringPrune off).

Additivity (work, points of master): Mbugwe 33.26 against a sum of 34.23 (near-additive); Sena 64.31 against 103.30 (overlap: #546, R3 and R2 remove the same dead branches); Aweti 27.58 against 13.12 (super-additive).

R2's cost -- why it is closed
  • Standalone (with the witness-reuse fix): Sena 9.05% more unification, conformance 1.00% more, bantu-tam 37.48% more. Events: Sena 17.29% fewer, conformance 0.22% fewer.
  • Before the fix, net of probes: Sena 15.3% less work, conformance 15.3% more (7,237 probes buy 92 events).
  • Stacked, the fix removes about 90% of R2's unification overhead, but R2 still costs 1.03 to 3.71 points of unification work over no R2 (conformance, Sena, bantu-tam).
  • The ledger's landing decision: #572 lands only on top of #577 and #574. The alternative, dropping #572, gives up Sena's 4.74 points.
Sources -- pinned at 2eba2f50 (closed PR #490)
Ngôn ngữ chính
C#
Star
29
Fork
16
Merge trung bình
5 ngày 21 giờ
Pull request đã merge (30 ngày)
9

Chuẩn bị môi trường

  • Không có Dockerfile hay tệp Docker Compose
  • Có mẫu pull request
  • Không có hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của sillsdev/machine

Tất cả issue của sillsdev/machine

Issue tương tự

Thêm issue về C#

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.