Gradient Compression is a distributed training optimization technique that reduces the communication volume of gradients — sending only the most important gradient information between workers, cutting communication overhead by 100-1000x at the cost of a small approximation.
The Communication Bottleneck
- AllReduce of gradients: Must communicate all parameters each step.
- GPT-3 (175B params): 175B × 4 bytes = 700GB per AllReduce step.
- Inter-node bandwidth: 100Gbps = 12.5 GB/s → 56 seconds per step.
- Solution: Reduce what's communicated without hurting convergence.
Top-K Sparsification
- Gradient vector: Most values are small, few are large.
- Top-K: Communicate only the K largest (by magnitude) gradient elements.
- K = 0.1%: 1000x compression — only 0.1% of gradients transmitted.
- Error feedback: Accumulate skipped gradients locally → include in next step.
- Without error feedback: Top-K diverges. With it: Convergence preserved.
PowerSGD (2019)
- Low-rank approximation: $G \approx PQ^T$ where P, Q are low-rank factors.
- Compress gradient matrix G (m×n) to P (m×r) + Q (n×r), $r << \min(m,n)$.
- Rank-4 PowerSGD: 16x compression with minimal accuracy loss.
- Default optimizer option in PyTorch DDP.
1-bit SGD / SignSGD
- Extreme compression: Communicate only sign of gradient (1 bit per element).
- 32x compression vs. FP32.
- QSGD: Stochastic quantization to k bits — adjustable compression ratio.
Communication Overlap
- Combine compression with overlap: Compute layer N+1 while communicating layer N gradients.
- Bucket allreduce: Group small layers into buckets — amortize communication overhead.
Convergence Guarantees
- With error feedback: Top-K and PowerSGD converge to same quality as uncompressed SGD.
- Trade-off: Compression ratio vs. wall-clock speedup vs. accuracy degradation.
Gradient compression is a key technique for scaling distributed training beyond NVLink speed — when training across multiple nodes connected by slower Ethernet or InfiniBand, compression can save $50-200K in compute costs for large model training runs.
Related Topics
Explore 500+ Semiconductor & AI Topics
From EUV lithography to CUDA optimization — search the full knowledge base or chat with our AI assistant.