ARTIFACT // RUN-DGX-SPARK-200GBE-VLLM.SH (SH)
NVIDIA DGX Spark (GB10 128GB / Dual 256GB) 200GbE RoCEv2 & UMA Cache Launcher (run-dgx-spark-200gbe-vllm.sh)
Flushes Linux VFS page cache before loading 70B–235B models into GB10 unified LPDDR5X, configures ConnectX-7 MTU 9000 & RoCEv2 GID index, and launches distributed Ray + vLLM.
[KEY VERIFIED TAKEAWAY / TL;DR]This reproducible configuration artifact "NVIDIA DGX Spark (GB10 128GB / Dual 256GB) 200GbE RoCEv2 & UMA Cache Launcher" (run-dgx-spark-200gbe-vllm.sh, SH) is paired with Tinker AI Lab's hardware-verified guide "nvidia-dgx-spark-gb10-single-and-dual-node-200gbe-vllm-llama-cpp-benchmark". It exposes 4 customizable browser variables (ROCE_IFACE=enp1s0f0np0, HEAD_NODE_IP=192.168.10.1, VLLM_MODEL_ID=Qwen/Qwen3-235B-A22B-FP8, PP_DEGREE=2) with loopback-first security defaults.
01 // HOMELABLocal AI / HomeLab· Verified: 2026-11-02
Browse All 42 Artifacts →run-dgx-spark-200gbe-vllm.sh
View Paired Guide →NVIDIA DGX Spark (GB10 128GB / Dual 256GB) 200GbE RoCEv2 & UMA Cache Launcher
Flushes Linux VFS page cache before loading 70B–235B models into GB10 unified LPDDR5X, configures ConnectX-7 MTU 9000 & RoCEv2 GID index, and launches distributed Ray + vLLM.
Customizable Variables (Saved in Browser)
UTF-8 Encoded · Live Client-Side Compilation
#!/usr/bin/env bash # Tinker AI — NVIDIA DGX Spark (GB10) UMA Cache Flush & 200GbE RoCEv2 vLLM Runner (Guide #29) set -euo pipefail IFACE="enp1s0f0np0" HEAD_IP="192.168.10.1" MODEL="Qwen/Qwen3-235B-A22B-FP8" PP_SIZE="2" echo "=== [1/4] Flushing Linux VFS Page Cache on GB10 128GB Unified Memory ===" sync && echo 3 | sudo tee /proc/sys/vm/drop_caches >/dev/null free -h echo "=== [2/4] Verifying ConnectX-7 200GbE Interface ($IFACE) & MTU 9000 ===" if ip link show "$IFACE" >/dev/null 2>&1; then sudo ip link set dev "$IFACE" mtu 9000 ethtool "$IFACE" | grep -E "Speed|Link detected" || true fi echo "=== [3/4] Exporting NCCL RoCEv2 Environment Variables (sm_121 / mlx5_0) ===" export NCCL_DEBUG=INFO export NCCL_IB_DISABLE=0 export NCCL_IB_HCA=mlx5_0:1 export NCCL_IB_GID_INDEX=3 export NCCL_SOCKET_IFNAME="$IFACE" export GLOO_SOCKET_IFNAME="$IFACE" echo "=== [4/4] Launching vLLM ($MODEL, PP=$PP_SIZE) on Head IP $HEAD_IP ===" python3 -m vllm.entrypoints.openai.api_server \ --model "$MODEL" \ --pipeline-parallel-size "$PP_SIZE" \ --distributed-executor-backend ray \ --max-model-len 32768 \ --gpu-memory-utilization 0.88 \ --enable-prefix-caching \ --host 0.0.0.0 --port 8000
PARAMETER SPECIFICATION // 参数化变量规范说明表
Customizable Parameter Reference for run-dgx-spark-200gbe-vllm.sh
This SH artifact exposes 4 template variables compiled client-side in your browser.
| Template Token | Parameter Description | Verified Default | Example Format |
|---|---|---|---|
{{ROCE_IFACE}} | ConnectX-7 200GbE Interface Name | enp1s0f0np0 | enp1s0f0np0 |
{{HEAD_NODE_IP}} | Spark Head Node RoCE IP (/30) | 192.168.10.1 | 192.168.10.1 |
{{VLLM_MODEL_ID}} | Target NVFP4 / FP8 Model Repo | Qwen/Qwen3-235B-A22B-FP8 | Qwen/Qwen3-235B-A22B-FP8 |
{{PP_DEGREE}} | Pipeline Parallel Nodes (1 or 2) | 2 | 2 |
PAIRED HARDWARE MANIFEST // 配套实测环境与边界记录
Verified Environment for "NVIDIA DGX Spark (GB10 · 128GB / Dual-Node 256GB) Local LLM Benchmark: Single-Box NVFP4 vs 200GbE ConnectX-7 RoCEv2 Distributed vLLM & llama.cpp"
Tested Hardware & OS
2x NVIDIA DGX Spark (GB10 Grace Blackwell: 20-core Arm CPU + sm_121 GPU, 128GB coherent LPDDR5X @ 273 GB/s per node, linked via 200GbE QSFP112 DAC cable)
Pinned Stack & Model Versions
vLLM 0.8.2 (aarch64 + sm_121 NVFP4/FP8)llama.cpp b4780 (CUDA 12.8 sm_121 MMQ)NCCL 2.25.1 + Mellanox OFED RoCEv2 (ConnectX-7)Ray 2.43.0 (Multi-Node Orchestrator)
Offline Boundary (100% Air-Gapped Single or 2-Node Local Cluster)
Two DGX Spark units connect directly back-to-back via a passive QSFP112 DAC cable on a private 192.168.10.0/30 subnet with zero external switch or cloud calls.
Known Operational Limits & Failure Modes
- At 273 GB/s memory bandwidth per node, single-stream dense 70B Q4_K_M generation tops out at ~5.8 tok/s (or ~9.6 tok/s in NVFP4); sparse MoE models (Qwen3-30B-A3B, Qwen3-Next-80B-A3B, Qwen3-235B-A22B) are strongly preferred for interactive chat.
- Because the 20-core Grace Arm CPU and Blackwell GPU share the same 128GB LPDDR5X pool via NVLink-C2C, Linux VFS file cache from model downloads can silently consume 40GB+ and trigger premature swap unless `vm.drop_caches=3` is run before loading >80GB weights.
DEPLOYMENT CHECKLIST // 配置落地核验步骤
3-Step Verification Checklist After Deploying run-dgx-spark-200gbe-vllm.sh
- Flushed Linux VFS page cache (`echo 3 | sudo tee /proc/sys/vm/drop_caches`) before loading >64GB models into GB10 unified memory.
- Verified 2-node QSFP112 link reaches ~197 Gb/s (`24.6 GB/s`) in `ib_write_bw` with `mtu 9000` enabled on both nodes.
- Confirmed vLLM startup logs print `NCCL INFO NET/IB : Using [0]mlx5_0:1/RoCE` instead of `NET/Socket`.