Set up an NVIDIA HGX B200 instance for LLM inference with vLLM.
Expected output (abbreviated):
Confirm all 8 GPUs are visible and persistence mode is on:
The NVIDIA HGX B200 uses NVSwitch 5.0 for all-to-all GPU communication. Verify with:
All GPU pairs should show NV connections (NVLink via NVSwitch), not PHB or SYS.
We recommend using uv for fast dependency resolution:
The PATH addition is needed for FlashInfer's JIT compilation (requires nvcc). The LD_LIBRARY_PATH addition resolves CUDA runtime library mismatches between the PyPI wheel and the system CUDA installation. See Troubleshooting for details.
Verify the installation:
Expected output:
NVIDIA HGX B200 GPUs use compute capability sm_100 (Blackwell architecture). Verify:
Expected: (10, 0)
vLLM 0.16.0 is recommended for NVIDIA HGX B200. It adds support for GLM-5's DSA architecture, FlashInfer MLA backend for DeepSeek, and TRT-LLM ragged prefill optimizations. Requires PyTorch 2.9.1+cu130. If you encounter compatibility issues, see Troubleshooting.
Version compatibility: MiniMax M2.5 requires vLLM 0.12.0 — its MoE routing (n_group=0) is incompatible with the fused kernel in 0.16.0. All other models (Nemotron Nano, Nemotron Super, GLM-5, DeepSeek V3.2) use vLLM 0.16.0. See Troubleshooting: MiniMax M2.5 for details.
For disaggregated serving experiments (prefill/decode separation):
See the Dynamo chapter for setup and benchmarks.
Docker avoids LD_LIBRARY_PATH issues and pins the exact vLLM version. This is the recommended approach for production.
--ipc=host is required for multi-GPU tensor parallelism. Without it, NCCL communication will fail. On default Vultr instances, Docker requires sudo — add your user to the docker group with sudo usermod -aG docker $USER.
This cookbook uses the following layout:
0 Comments
Be the first to comment and share your perspective with the community.