microsoft/vidur

Accurate, large-scale, and extensible simulator for LLM inference Systems

What it solves

Vidur is a high-fidelity simulator for LLM inference systems. It allows developers and researchers to analyze system performance, plan capacity for deployments, and test new scheduling algorithms or optimizations (like speculative decoding) without requiring constant access to expensive GPUs.

How it works

Vidur simulates the execution of LLM workloads across various hardware configurations (such as A100 or H100 GPUs) and model architectures (like Llama-3 or Qwen). It uses a profiling phase to gather data, then simulates the inference process to predict metrics such as Time to First Token (TTFT), Time Per Output Token (TPOT), and end-to-end request time. It supports complex deployment setups, including Tensor Parallelism (TP) and Pipeline Parallelism (PP).

Who it’s for

It is designed for ML system researchers and engineers who need to optimize LLM serving infrastructure, determine the most cost-effective hardware configurations, or experiment with new inference scheduling strategies.

Highlights

  • GPU-free simulation: Analyze performance and capacity without needing active GPU hardware after an initial profiling step.
  • Hardware and Model Support: Compatible with multiple GPU SKUs (A100, H100, A40) and popular models including Llama-2, Llama-3, CodeLlama, InternLM, and Qwen.
  • Detailed Metrics: Tracks key performance indicators like batch size, TTFT, and TPOT, with outputs exportable to wandb or Chrome traces for visualization.
  • Flexible Configuration: Supports various request generators (synthetic or trace-based) and scheduling algorithms (e.g., Sarathi).

Related

  • Project
  • Dispatch
  • Project
  • Project
  • Project