Recipe by Tom Sarihan @tsarihan · based on tonyd2wild, Z.ai, RedHatAI, vLLM, NVIDIA
License: Apache-2.0 · Z.ai: MIT · RedHatAI: MIT · vLLM: Apache-2.0.
TESTED BY Tom Sarihan on 2x DGX Spark (GB10), NVFP4, vLLM TP=2, MTP-4 · their results (log or results file)
GLM-5.3-Flash on two DGX Sparks
ADVANCED: two DGX Sparks, Linux terminal, about 185 GB download per box.
git clone https://github.com/tsarihan/glm-5.3-flash-nvfp4-2x-dgx-spark-playbook.git
cd glm-5.3-flash-nvfp4-2x-dgx-spark-playbook
hf download RedHatAI/GLM-5.3-Flash-NVFP4 --local-dir /data/models/glm-5.3-flash-nvfp4./scripts/prelaunch-gb10.shNODE_RANK=0 NODE0_FABRIC=<spark-1 cable IP> ./scripts/serve-glm53-nvfp4-vllm.shNODE_RANK=1 NODE0_FABRIC=<spark-1 cable IP> ./scripts/serve-glm53-nvfp4-vllm.shOR · LET A CODING AGENT DO IT
Set up the GLM-5.3-Flash two-DGX-Spark recipe by Tom Sarihan: https://github.com/tsarihan/glm-5.3-flash-nvfp4-2x-dgx-spark-playbook
Follow its README and scripts exactly. I have two DGX Sparks.
1. Check first and tell me: both Sparks reachable over SSH, the QSFP link up (NVIDIA Connect Two Sparks playbook), Docker working, 185 GB free on each. Stop if any is missing.
2. On both: clone the repo and download RedHatAI/GLM-5.3-Flash-NVFP4 to /data/models/glm-5.3-flash-nvfp4.
3. On both: run ./scripts/prelaunch-gb10.sh.
4. Start rank 0 on Spark 1 and rank 1 on Spark 2 with ./scripts/serve-glm53-nvfp4-vllm.sh, NODE0_FABRIC set to Spark 1’s cable IP.
5. Poll /health on port 8890 (never /v1/models) and tell me when it is up.
Ask me before changing network settings or deleting anything.If it fails
/v1/models says OK but nothing answers.
The engine died. Check /health and the container log, then restart both ranks.
It hangs after a reboot, or long prompts freeze a box.
Run ./scripts/prelaunch-gb10.sh on both again. Its memory settings do not survive a reboot.
The engine refuses to start with images on.
Expected at full context. Leave MAX_MODEL_LEN at the script default, or set MM_IMAGES=0.
Answers cut off and look broken.
Raise max_tokens in your client. It is a reasoning model and thinks first.
From the original README, shortened. Read it for full details.
What they tested
- 21.45 tok/s single stream; 39.96 / 49.30 / 61.29 tok/s at 4 / 8 / 16 users · evidence
- Needle-in-haystack 5/5 at 4K, 32K and 131K tokens · evidence
- SWE-bench Pro, 40-task subset: 36/40 · evidence
Not shown in their results: Uses a prebuilt container image from tonyd2wild (ghcr.io). The full 731-task SWE-bench Pro run was not finished when we checked.
RunCards does not test recipes. We only list recipes whose authors publish their own test results. Checked 2026-10-19.
Who made what
- tonyd2wild: the original 2x Spark recipe and the container image this one starts from
- Z.ai: the GLM-5.3-Flash model
- RedHatAI: the NVFP4 quantized weights
- vLLM: the serving engine
- NVIDIA: the Connect Two Sparks playbook for the cable and network
The README Credits section names Z.ai, RedHatAI and vLLM. The serve script names tonyd2wild’s recipe and image as its starting point.