eugr/spark-vllm-docker
Docker configuration for running VLLM on dual DGX Sparks
What it solves
This project provides an optimized Docker environment and orchestration scripts specifically for running vLLM on NVIDIA DGX Spark hardware. It simplifies the complex process of setting up single-node or multi-node clusters, handling the networking requirements (InfiniBand/RDMA/NCCL) and dependency management needed for high-performance LLM inference on this specific hardware architecture.
How it works
The repository provides a suite of scripts to automate the lifecycle of a vLLM deployment:
- Image Management:
build-and-copy.shcreates Docker images (or pulls prebuilt nightly ones) and distributes them across a cluster to ensure consistency. - Cluster Orchestration:
launch-cluster.shmanages the startup of containers across multiple nodes, automatically configuring the distributed backend (Ray or native PyTorch) and handling per-node multiprocessing arguments. - Model Distribution:
hf-download.shdownloads models from Hugging Face and distributes them across the cluster via the ConnectX interconnect to avoid redundant internet downloads. - Performance Optimizations: It integrates specialized components like FlashInfer, DeepGEMM (NVIDIA branch for sm12x), and supports high-performance loading formats like
fastsafetensorsandInstantTensor.
Who it’s for
It is designed for AI engineers and researchers using NVIDIA DGX Spark systems who want to deploy large language models using vLLM with minimal manual configuration of distributed networking and GPU kernels.
Highlights
- Multi-Node Support: Native support for 2-node, 3-node mesh, and larger DGX Spark clusters.
- Hardware-Specific Tuning: Optimized for sm12x architecture with B12X kernel support.
- Automated Distribution: Tools to sync Docker images and model weights across nodes using high-speed interconnects.
- Flexible Build Path: Supports pulling prebuilt nightly images, building from wheels, or compiling vLLM from specific source commits/PRs.
- Memory Management: Includes
earlyoomintegration to monitor host memory and prevent system crashes during heavy inference loads.
Related
- Project
- Dispatch
- Project
- Project
- Project