- Migrate all 127 non-reserved docs to OKF v0.1 frontmatter (type/description/tags/timestamp); fix 13 YAML issues, 2 duplicate-FM blocks, strip reserved-page FM - Restructure log.md to OKF (## YYYY-MM-DD, newest-first) - Fact-check against scripts/AGENTS.md ground truth: fix 6 false 'Active' banners on retired runbooks, 96->114 GiB GTT, deployment.md vs deploy-plan.py/deploy-remote.sh, Deployment Flow frank-medium=Quadlet, Calibre 9.9.0->9.15.0 + CVE-2025-7404 conflation, Copyparty v1.20.24, RomM 5.3.0 breaking change - Move *arr docs to new FrankBook-Pro/ section (git mv, link-safe) - Write active runbook bodies from ground truth (frank-large, frank-small) - Add 3 research briefs + HTML report: Local TTS and Voice Cloning, AI Job Search and Resume Tools, Most Popular Self-Hosted AI Apps (Jun-Sep 2026) - Add upstream-version rows to ComfyUI/OpenWebUI/Hermes app docs - All 336 tests pass; 136 pages, 0 unresolved wikilinks
2.6 KiB
type, description, tags, timestamp
| type | description | tags | timestamp | |
|---|---|---|---|---|
| reference | Why Lemonade Server can do image generation on Strix Halo when ComfyUI cannot. |
|
2026-08-28 |
Lemonade and sd.cpp
Why Lemonade Server can do image generation on Strix Halo when ComfyUI cannot. Research from the Lemonade source repo (lemonade-sdk/lemonade, cloned 2026-08-14) and live verification.
The short answer
Lemonade does not run ComfyUI. Its image-generation backend is a wrapped stable-diffusion.cpp (leejet/stable-diffusion.cpp) subprocess. sd.cpp is a ggml-family native C++ runtime that ships its own HIP kernels — and those kernels include gfx1151. ComfyUI runs on PyTorch, whose standard wheels omit gfx1151. Same hardware, different runtime, different result.
From the Lemonade source
src/cpp/server/backends/sdcpp/sdcpp_server.cpp:
- Image gen is
SDServer, aWrappedServeraround a prebuilt sd.cpp binary. - Downloads
sd-<version>-bin-Linux-Ubuntu-24.04-x86_64-<backend>.zipfromleejet/stable-diffusion.cppreleases. - Backends:
cpu, cuda, metal, rocm, vulkan. - ROCm asset is
...-rocm-<version>.zip; Vulkan is...-vulkan.zip.
Backend support matrix (serverAppConfigs-docs/dev/backends-reference.md):
| Recipe | Backend | Device families |
|---|---|---|
sd-cpp |
rocm | amd_gpu (gfx103X, gfx110X, gfx1150, gfx1151, gfx1152, gfx120X) |
sd-cpp |
vulkan | amd_gpu; cpu; nvidia_gpu |
thenoise |
rocm | amd_gpu (gfx1150, gfx1151, gfx1152) — experimental |
gfx1151 is explicitly supported by sd.cpp's ROCm build. There is also a dedicated experimental thenoise ROCm backend targeting exactly the Strix Halo archs.
Engine comparison
| ComfyUI | Lemonade (sd.cpp) | |
|---|---|---|
| Runtime | PyTorch | native C++ (ggml family) |
| AMD path | needs PyTorch ROCm wheel with gfx1151 kernels — not in standard wheels | ships own HIP kernels, gfx1151 included |
| On Strix Halo | CPU only (today) | ROCm GPU, or Vulkan fallback |
| Interface | node graph web UI | server, OpenAI-style API, GUI/CLI |
This mirrors llama.cpp on the same box: ggml-family runtimes ship their own gfx1151 HIP kernels and run on ROCm; PyTorch does not.
Relevance
- If GPU image generation on Dankclaw matters, Lemonade (or bare sd.cpp) is the working path today.
- ComfyUI's node graph is the cost of switching: Lemonade is not ComfyUI.
- See ComfyUI ROCm and Vulkan for the PyTorch-side analysis showing a gfx1151-enabled torch would also make ComfyUI work.
See Also
- ComfyUI ROCm and Vulkan — the PyTorch side of this question
- ComfyUI — current CPU config
- Dankclaw Stack