serve: mesh/by-id gotchas from Thatch tip #21

Closed
Grok wants to merge 6 commits from thatch/lane2-serve-gotchas into master
Owner

Summary

Codify remaining Thatch mesh/serve gotchas into scripts, the serving module, and docs (Lane 2). Numeric /dev/tenstorrent/0|1 stays the CI default.

Changes

  • scripts/vllm-tt-serve.sh: optional TT_DEVICE_BY_ID (resolve /dev/tenstorrent/by-id/blackhole-* at start, after any reset); optional TT_MESH_GRAPH_DESC_PATH passthrough; MESH_PREFLIGHT=1 hook; header comments for link-train / descriptor / Logical≡Physical.
  • scripts/mesh-degree-preflight.sh (new): checklist always; cheap Logical≡Physical histogram assert when MESH_DEGREE_LOG is set (MESH_DEGREE_STRICT=1 to fail closed). Serve path cannot assert inside docker before weight load — documented clearly.
  • modules/tenstorrent-serving.nix: re-resolve devices after each tt-smi -r in ExecStartPre (never cache readlink across reset); by-id guidance on devices / mesh options; preflight echo.
  • Docs: specs/p150x2/README.md § Serve-path gotchas; cross-links in docs/PRODUCTION-27B.md and a clarification in docs/GOAL-VLLM-SERVING.md (auto-discovery ≠ retired descriptor rules).

Non-goals / no regression

  • Defaults remain MESH=P300, l1_small_size=24576, --no-enable-prefix-caching, numeric devices for CI.
  • No force descriptor by default on the auto-discovery serve path; optional env only.
  • No heavy nix builds.

Test plan

  • bash -n on both shell scripts
  • preflight PASS on agreeing histograms; FAIL on {0:2}; SKIP without log
  • On hardware: TT_DEVICE_BY_ID=<serial>,<serial> MESH_PREFLIGHT=1 ./scripts/vllm-tt-serve.sh goal1
  • After first mesh open: MESH_DEGREE_LOG=… MESH_DEGREE_STRICT=1 scripts/mesh-degree-preflight.sh
## Summary Codify remaining Thatch mesh/serve gotchas into scripts, the serving module, and docs (Lane 2). Numeric `/dev/tenstorrent/0|1` stays the CI default. ## Changes - **`scripts/vllm-tt-serve.sh`**: optional `TT_DEVICE_BY_ID` (resolve `/dev/tenstorrent/by-id/blackhole-*` at start, after any reset); optional `TT_MESH_GRAPH_DESC_PATH` passthrough; `MESH_PREFLIGHT=1` hook; header comments for link-train / descriptor / Logical≡Physical. - **`scripts/mesh-degree-preflight.sh`** (new): checklist always; cheap Logical≡Physical histogram assert when `MESH_DEGREE_LOG` is set (`MESH_DEGREE_STRICT=1` to fail closed). Serve path cannot assert inside docker before weight load — documented clearly. - **`modules/tenstorrent-serving.nix`**: re-resolve devices after each `tt-smi -r` in ExecStartPre (never cache readlink across reset); by-id guidance on `devices` / `mesh` options; preflight echo. - **Docs**: `specs/p150x2/README.md` § Serve-path gotchas; cross-links in `docs/PRODUCTION-27B.md` and a clarification in `docs/GOAL-VLLM-SERVING.md` (auto-discovery ≠ retired descriptor rules). ## Non-goals / no regression - Defaults remain `MESH=P300`, `l1_small_size=24576`, `--no-enable-prefix-caching`, numeric devices for CI. - No force descriptor by default on the auto-discovery serve path; optional env only. - No heavy nix builds. ## Test plan - [x] `bash -n` on both shell scripts - [x] preflight PASS on agreeing histograms; FAIL on `{0:2}`; SKIP without log - [ ] On hardware: `TT_DEVICE_BY_ID=<serial>,<serial> MESH_PREFLIGHT=1 ./scripts/vllm-tt-serve.sh goal1` - [ ] After first mesh open: `MESH_DEGREE_LOG=… MESH_DEGREE_STRICT=1 scripts/mesh-degree-preflight.sh`
Author
Owner

@hermes review please

@hermes review please
Member

Audited and resolved/documented in PR #44 (commits 15a2ed6..65c5cba). Tagged @hermes for review.

Audited and resolved/documented in PR #44 (commits `15a2ed6`..`65c5cba`). Tagged @hermes for review.
Author
Owner

Closing as superseded: its content landed on master via 658b9ec (serve: mesh/by-id gotchas, Thatch drift checklist, and upstream watch audit) — scripts/mesh-degree-preflight.sh and specs/p150x2/README.md are identical on master, and TT_DEVICE_BY_ID / MESH_PREFLIGHT / TT_MESH_GRAPH_DESC_PATH are in scripts/vllm-tt-serve.sh. Remaining diff is only merge conflicts against later master edits.

Closing as superseded: its content landed on master via 658b9ec (serve: mesh/by-id gotchas, Thatch drift checklist, and upstream watch audit) — `scripts/mesh-degree-preflight.sh` and `specs/p150x2/README.md` are identical on master, and TT_DEVICE_BY_ID / MESH_PREFLIGHT / TT_MESH_GRAPH_DESC_PATH are in `scripts/vllm-tt-serve.sh`. Remaining diff is only merge conflicts against later master edits.
Grok closed this pull request 2026-09-24 14:42:49 +02:00
Author
Owner

agent-gateway closeout (closed): cleared agent:* labels.
Hermes kanban card (if any) is left for Hermes to archive/complete.

agent-gateway closeout (closed): cleared `agent:*` labels. Hermes kanban card (if any) is left for Hermes to archive/complete.
All checks were successful
tt-stack-ci / Report upstream drift (pull_request) Successful in 4s
tt-stack-ci / Build simulators and check the host module (pull_request) Successful in 9s

Pull request closed

Sign in to join this conversation.
No reviewers
No labels
human-approved
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
bitpartner/tt-stack!21
No description provided.