Frank 1e52e45fae docs(frank-tts): record the NPU spike verdict and the iGPU co-tenancy plan
The overnight spike settled whether frank-tts can run on the Strix Halo NPU.
It cannot, and the wall is the loader, not the silicon: AMD's own Linux
runtime opens /dev/accel/accel0, succeeds at the GEM ioctls, then declines
the NuTTS-Air graph without emitting a single log line — and the one run that
did load has never reproduced. The accelerator that does exist is the gfx1151
iGPU behind -DGGML_VULKAN=ON, a flag our own Containerfile.engine writes OFF,
and Frank set the target shape to co-tenancy: the engine resident beside
frank-dragoon, not a handover.

- report/tts-npu-spike-verdict-2026-10-19.md owns the measured result: the
  exoneration chain, the two arms' real-time bars (12.5 codes/s deployed vs
  50.00 for NuTTS-Air), the 65,536-entry speech-token census (ids
  151,671-217,206), the host gates (rootless cannot read accel0; dpkg-deb the
  vendor XRT, never dpkg -i), the iGPU census (18,523 of 116,733 MiB GTT in
  use, 17 GiB host RAM available, GTT pages are host pages), the two gates
  that decide co-tenancy (RADV heap for an APU tenant; dragoon's TTFT with a
  synthesis in flight), and the five-file change surface for the trial.
- report/npu-tts-runtime-landscape-2026-10-19.md and
  report/qwen3-tts-payload-portability-2026-10-19.md are the research slices;
  both now point at the verdict page instead of ending in loose ends.
- The vault page gains "Where the engine computes", so an operator doing a TTS
  task learns the NPU is a closed door without re-walking it.

No fleet change: frank-tts / frank-tts-engine still serve narrator1-3 on CPU.
tests: ./tests/run.sh 450/450 green.
2026-10-19 14:02:34 -07:00
2026-10-15 18:22:22 -07:00

Server App Configs

AI Disclosures:

  • Slop rating: 2/5 - Actively using, actively de-slopping, repository mostly human owned, lacks formal process.
  • Completeness: Unfinished, planning planned, no plan yet
  • Datacenter model/spend: Less than $20 of Deepseek 4.1 Flash and GLM-5.3-Flash
  • Local model: Qwen 3.8 Flash Next

slop rating of 2 or lower indicates human reading is a worthwhile exercise, and that Frank has read the code and knows the architecture.

slop rating of 2 indicates that while this project is human owned, no human contribution process exists and/or release is agentically driven.

The single repository for the two homelab servers: the Podman container stacks and the LLM inference fleet. One repo, one checkout per host, one deploy script.

2026-08-22: the former vllmScripts repository (LLM fleet) is merged into this repo with its full git history. See AGENTS.md for the merge note.

Targets

Host User IP Podman stack LLM service LLM port
dankserver dank 192.168.0.235 media and library frank-medium (ROCmFPX llama.cpp, Qwen3.8-27B AGENT) 7770
dankclaw dank 192.168.0.143 AI, search, development, observability frank-dragoon (gufo, Qwen3.8-27B UD-Q8_K_XL) 7770

Active Services

Service Host Hostname Port
RomM dankserver romm.dankserver.local 8085
Copyparty dankserver files.dankserver.local 3923
Calibre-Web dankserver books.dankserver.local 8083
frank-medium dankserver — (bare endpoint) 7770
SearXNG dankclaw search.dankclaw.local 8081
ComfyUI dankclaw comfyui.dankclaw.local 8188
OpenWebUI dankclaw chat.dankclaw.local 3000
Hermes dankclaw hermes.dankclaw.local 8090
Gitea dankclaw gitea.dankclaw.local 3001
Grafana dankclaw grafana.dankclaw.local 3002
Prometheus dankclaw prometheus.dankclaw.local 9090
frank-dragoon dankclaw — (bare endpoint) 7770

Structure

  • dankserver/ — compose.yaml + Caddyfile + .env.example for the Dankserver stack
  • dankclaw/ — compose.yaml + Caddyfile + .env.example for the Dankclaw stack
  • shared/ — homepage, prometheus config, deploy helpers
  • scripts/ — deploy.sh and deploy-remote.sh (service-scoped deployment), the planner, LLM serve scripts, systemd units, env tunables, and bench harnesses
  • old/ — retired PP/NPU-era LLM scripts (reference only)
  • serverAppConfigs-docs/ — project knowledge base (Obsidian vault, wikilinks). serverAppConfigs-docs/LLM/ is the LLM fleet
  • tests/ — bats test suite (see Testing Policy)

Deployment

See serverAppConfigs-docs/Architecture/Deployment Flow.md and serverAppConfigs-docs/LLM/deployment.md. Run ./scripts/deploy.sh <dankclaw|dankserver> after committing changes. It plans and deploys only the changed services. Use --service NAME for an explicit single-service retry; inference is restarted only when its own files (or the shared chat template) changed.

Knowledge Base

The serverAppConfigs-docs/ directory is an Obsidian vault. Start at serverAppConfigs-docs/index.md. The LLM fleet knowledge base lives at serverAppConfigs-docs/LLM/index.md.

Testing

Run ./tests/run.sh before every push. See serverAppConfigs-docs/Architecture/Testing Policy.md.

S
Description
Podman deployment configs for Dankserver and Dankclaw
Readme
8.2 MiB
Languages
Shell 60.4%
Python 21%
HTML 6.2%
Jinja 3.9%
C++ 3.9%
Other 4.6%