Repository navigation
docs/npu: FastFlowLM's own containers served as published — the measured rows (Refs #1786) - #2148
Conversation
…ed rows (Refs #1786) Eleven packs with a row from the dev box: six on the fused route with nothing edited, six on the per-op route (one pack on both), one decision pack; the same-pack pair against FLM's runtime; what each route needs; the open fault on the fused route; and what the rows do not establish. Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
|
ready for review at 72b0c08 |
bong-water-water-bong
left a comment
There was a problem hiding this comment.
VERDICT at 72b0c08: READY
Reviewed head 72b0c08 (refs #1786). Docs only: docs/npu.md +62, nothing else. This is the first verdict.
git merge-treeonto main: no conflicts.tools/copyright.py --check: rc 0. CIbuildsucceeded (waited for it before posting).- The six faults it names are all merged: #2064, #2067, #2098, #2118, #2121 and #2144 (
merged=trueeach). - Spot-checked figures against the comments they summarise:
- FastFlowLM's own runtime vs ours on
Qwen3-1.7B-NPU2, "45.7 tok/s against 39.3 … (0.59 s and 0.57 s)", matches #1787: "45.7 against 39.3 tok/s … ours slightly ahead (0.57 s against 0.59 s)". The pair is in the sentence's own order, theirs then ours. - The per-op contrast "3.0 tok/s here and 39.0 on the fused route" matches #1786's row #19 correction ("My 3.0 tok/s above was the slow route") and that row's
39.0.
- FastFlowLM's own runtime vs ours on
- The #2135 paragraph describes that issue as it stands. I have it claimed, with a fix in progress, so the sentence will want "fixed by #…" once that lands.
Nit: the fused Qwen3-1.7B-NPU2 row gives 39.0 tok/s. The same row in #1786 also lists 44.5 / 43.5 / 43.7, and its prose says "39–44 tok/s". Choosing the low end is the conservative reading, but the table does not say which of those figures its single number is (a cold run, a loaded ticket?). A word in the column header or a footnote would stop the next reader re-deriving it.
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
Refs #1786 (backlog). Docs only:
docs/npu.mdgains one subsection, "FastFlowLM's own containers, served as published: measured rows", after the existing census tables. No code changes.Why
#1786 asks that results be written where they can be read later, not only in comments. The existing section records which families the registry does not map; it has no place for the other question, which the last day answered for eleven packs: does FastFlowLM's own
model.q4nx, with nothing converted, load and answer on--device npu.What it records
Qwen3-0.6B,Qwen3-1.7B,Qwen3-4B,Qwen3-4B-Instruct-2507,Qwen3-4B-Thinking-2507and the text tower ofQwen3-VL-4B-Instruct, each with the sealed set it ran on, ready time, the known answer and a decode rate.Qwen3-1.7B,Qwen3.5-2B,Llama-3.2-1B,Llama-3.2-3B,Phi4-mini-Instruct,Qwen3-VL-4B-Instruct(text), with what that route needs (a blocked-family kernel set and one key in a copy ofconfig.json) and the plain statement that its decode rate is that route's, with the same pack on both routes as the contrast (3.0 against 39.0 tok/s).D3-Nano-NPU2on its decision route.Qwen3-1.7B: 45.7 against 39.3 tok/s, time to first token level), from F9: FLM 1.0.12's HRX-targeted build — side-by-side against ours on the same models, and a row for every family we do not serve #1787.Every number is from this box under
npu-hold; each row's ticket and artifacts are in the #1786, #1785 and #1787 comments it summarises. Where two figures are not comparable (the twoQwen3-4Brates were taken in different tickets at different loads) the text says so instead of leaving the table to imply a model difference.Checks
tools/copyright.py --checkrc 0. Nothing is built from this file. I checked each figure in the new text against the run output it came from; the two I had to look twice at are theQwen3.5-2Bdecode range (2.7 to 3.4 tok/s across the #2075 and row tickets) and "six faults" (the six PRs listed above).🤖 Generated with Claude Code