atlas

Research map / Architectures and efficiency / Quantization

COAT: Compressing Optimizer states and Activations for Memory-Efficient FP8 Training

ICLR 2025 · Architectures and efficiency › Quantization · approach: Low-precision training formats

Read the paperCheck your idea against 108,967 papers

AI-extracted summary. Written by AI from the paper's full text. Numbers and claims can be wrong or missing context, so check the paper before you cite or build on it.

COAT quantizes AdamW optimizer states and activations to FP8 (via dynamic range expansion and mixed-granularity activation quantization) to cut training memory by 1.54x and speed up training 1.43x versus BF16 with near-lossless accuracy.

Problem

FP8 training frameworks such as Transformer Engine and FP8-LM leave activations and the second-order optimizer momentum in higher precision, so memory savings are incomplete, and naive FP8 quantization of these tensors loses accuracy.

Approach

Apply a power-function expansion f(x)=sign(x)|x|^k per quantization group so optimizer-state dynamic ranges fill the E4M3 range, and quantize activations with fine-grained (1x16) groups for non-linear layers and per-tensor scaling (via two-stage Group Scaling) for linear layers, storing activations directly in FP8.

Key results

Measured effects reported in the paper

What was changedWhereMeasuredEffect
Apply COAT instead of BF16 trainingOLMo-1B pretraining · OLMo-1B pretraining, Avg Accaccuracy: 68.2 % -> 67.8 %Hurt
Apply COAT instead of BF16 trainingOLMo-7B pretraining · OLMo-7B pretraining, Avg pplperplexity: 11.174 -> 11.279Hurt
Apply COAT instead of BF16 fine-tuningLlama-2-7B math fine-tuning · Math fine-tuningaverage score: 55.7 -> 55.5No clear effect
Use COAT rather than BF16Llama-2-7B end-to-end training on 4 GPUs · Context length 2048peak memory reduction ratio: 1.00× -> 1.54×Helped
Quantize optimizer states and activations to FP8 rather than use BF16Llama-2-7B training on 4 GPUs · End-to-end trainingspeedup: 1.00x -> 1.45xHelped
Add Dynamic Range Expansion to optimizer-state quantization (ablation)FP8 optimizer states · Optimizer quantizationMSE: +1.63× MSE reductionHelped
Add Dynamic Range Expansion to DE8 optimizer quantization (ablation)DE8 optimizer states · Optimizer quantizationquantization error: 1.41×Helped
Quantize activations to FP8 with COAT's activation quantization flow (ablation)LLM training · OLMo-1B downstream tasksaverage accuracy: 51.6 -> 52.3No clear effect
Quantize optimizer states to FP8 (ablation)Llama-2-7B on 4 GPUs · End-to-end trainingspeedup: 1.00x -> 1.08xHelped
Add FP8 activation quantization to FP8 optimizer quantization (ablation)Llama-2-7B on 4 GPUs · End-to-end trainingspeedup: 1.08x -> 1.45xHelped
Use per-group quantization rather than per-tensor quantization for linear layers (ablation)Linear-layer activations · Linear layersspeed: 1300 TFlops -> about 900 TFlopsHurt

Surprising findings

Limitations

Experimental setup

Datasets: Dolma MAmmoTH VILA SFT data mixture

Benchmarks: WikiText-103 C4 Pile COPA ARC-Easy SciQ HellaSwag MathQA SVAMP NumGLUE GSM8K VideoMME

Metrics: perplexity accuracy memory footprint (GB) tokens/s throughput MSE of quantization error

Baselines: BF16 TransformerEngine FP8-LM

Builds on: Transformer Engine FP8-LM 8-bit Adam Jetfire VS-Quant

Closest papers by meaning

Writing a paper in this area? scime draft is a free LaTeX editor with AI included, real-time co-authors and a check of your references and venue rules before you submit. It also imports OpenAI Prism projects.

Open scime draft

Get the next scime Dispatch and a monthly field update

Free. We send a confirmation link first; every email has a one-click unsubscribe. Privacy