System Design Architectures

Interactive technical blueprints, capacity estimates, database sharding strategies, and visual flowcharts for the top 30 system design interview questions.

Target Architectures
Architecture Blueprint

Design Distributed LLM Serving & Inference Engine (vLLM)

High-throughput frontier LLM inference gateway managing GPU clusters (H100/A100), continuous iteration-level batching, PagedAttention KV-cache memory allocation, and token streaming.

1. System Requirements

Functional
  • Serve large foundation models (Llama 3 70B, DeepSeek, Mixtral) with streaming token generation over Server-Sent Events (SSE).
  • Support dynamic, variable-length prompt input contexts and unpredictable response output lengths.
  • Schedule and batch concurrent user prompts dynamically to maximize GPU tensor core utilization.
Non-Functional / SLA
  • Sub-200ms Time-to-First-Token (TTFT) and sub-30ms Inter-Token Latency (ITL) for fluid real-time responses.
  • Zero GPU Out-Of-Memory (OOM) crashes under variable traffic spikes.
  • High model compute efficiency: achieve >75% GPU Model FLOPs Utilization (MFU).

2. Scale & Resource Estimates

Throughput: 5,000 concurrent active generation streams. Average prompt: 1,000 tokens, average output: 400 tokens.

Storage & RAM: Model weights: 70B parameter model in FP16 = 140 GB VRAM. Spread across 4x NVIDIA H100 GPUs (80 GB each). KV cache: 2-4 GB per active concurrent stream.

3. System API Endpoints

POST /v1/chat/completions
Content-Type: application/json
Accept: text/event-stream

{
  "model": "meta-llama/Llama-3-70b-instruct",
  "messages": [
    { "role": "system", "content": "You are a distributed systems architect." },
    { "role": "user", "content": "Explain PagedAttention in 2 sentences." }
  ],
  "stream": true,
  "temperature": 0.2
}

Response (Streamed SSE Chunk Events):
data: {"id":"chatcmpl-912","choices":[{"delta":{"content":"Paged"},"index":0}]}
data: {"id":"chatcmpl-912","choices":[{"delta":{"content":"Attention"},"index":0}]}
data: [DONE]

4. Database Schema Design

Table: gpu_cluster_nodes (Internal Registry - Redis)
- node_id (VARCHAR - Primary Key)
- gpu_type (VARCHAR) -- "NVIDIA_H100_80GB"
- total_vram_bytes (BIGINT)
- free_kv_cache_blocks (INTEGER)
- active_slots (INTEGER)
- tensor_parallel_size (INTEGER)

Table: prompt_cache_manifest (Redis)
- prefix_hash (VARCHAR(64) - Primary Key)
- node_id (VARCHAR)
- block_indices (INTEGER[])
- last_accessed (TIMESTAMP)

5. Interactive High-Level Architecture

graph TD UserClient["AI Application / Web Client"] --> Router["API Gateway & Request Router"] Router --> Scheduler["Continuous Iteration Batching Scheduler"] Scheduler --> PagedAttn["PagedAttention KV-Cache Manager: Virtual Pages"] PagedAttn --> GPUCluster["GPU Worker Nodes: H100 Tensor Parallel Mesh"] GPUCluster --> ForwardPass["Transformer Forward Pass Layer"] ForwardPass --> TokenGen["Next-Token Sampler"] TokenGen --> StreamQueue["Detokenizer & Token Stream Buffer"] TokenGen -.->|Incomplete Sequence| Scheduler StreamQueue -->|SSE Stream Chunk| UserClient

6. Scalability Deep Dive & Bottlenecks

Traditional deep learning frameworks pre-allocate contiguous GPU VRAM for the maximum possible sequence length (e.g. 8,192 tokens), wasting 60-80% of VRAM due to internal memory fragmentation. PagedAttention (pioneered by vLLM) solves this by managing Key-Value (KV) cache memory like virtual memory pages in an operating system. KV cache is divided into fixed-size physical blocks (e.g., 16 tokens per block) allocated on demand. Paired with Continuous Iteration-Level Batching, the engine inserts new requests into the forward pass after every single token generation step, multiplying serving throughput by 4x-8x.

7. Production Scaling Strategies

PagedAttention Virtual Memory Allocation: Allocate KV cache tensors in non-contiguous physical memory blocks. Physical memory waste drops from >60% to <4%, allowing servers to fit 4x more concurrent generation requests per GPU.

Continuous (Iteration-Level) Batching: Instead of static batching (where an entire batch is blocked until the longest sequence completes), evaluate the scheduler at every decoding iteration. Completed requests exit immediately and new requests join the batch dynamically.

Tensor Parallelism via NVLink: For models larger than a single GPU's VRAM (e.g. 70B+), split weight matrices horizontally and vertically across 4 to 8 GPUs within a single node connected via ultra-fast 900 GB/s NVLink interconnects.

Prompt Prefix Caching: Frequently repeated prompt headers (e.g. multi-page system instructions or PDF RAG contexts) retain their pre-computed KV cache across requests. Subsequent requests reuse cached KV blocks, slashing Time-to-First-Token (TTFT) by 85%.

Speculative Decoding: Pair a small, fast 'draft model' (e.g. Llama-3-8B) with the target foundation model (Llama-3-70B). The draft model guesses 3-5 tokens speculatively; the large model validates all tokens in parallel in a single forward pass, doubling generation speed.

Chunked Prefill Scheduling: Heavy prefill phases (digesting 10K input tokens) are split into chunks and co-scheduled alongside token generation passes to prevent incoming long prompts from starving active streaming requests.

8. Runnable Production Starter Code

Scaffold