Glyd

Qwen3 30B-A3B

  • Qwen
  • 30.5B parameters
  • Mixture of experts, 3.3B active
  • Apache-2.0
  • Released in bf16
  • Measured Sep 27, 2026

Qwen/Qwen3-30B-A3B on Hugging Face

Weights in GPU memory
61.1 to 41.1 GB
33% less, every weight restored bit for bit
Smallest single GPU
80 GB to 48 GB
Weights, an 8K-token KV cache and 1.5 GB for the runtime
H100 80 GB GPUs it takes
1 to 1
Weights, an 8K-token KV cache and 1.5 GB a GPU for the runtime
Its matrices, packed
59.8 to 40.2 GB
−32.7%, every matrix unpacked bit for bit

Which single GPU it fits

Worked out from the measured weights.

MemoryGPUsbf16Glyd
16 GBRTX 4080, RTX 5080NoNo
24 GBRTX 4090, RTX 3090, A10NoNo
32 GBRTX 5090NoNo
48 GBRTX A6000, L40S, RTX 6000 AdaRoom for about 90K tokens of context with GlydNoFits
80 GBH100, A100 80 GBRoom for the KV cache: about 232K tokens in bf16, 435K with GlydFitsFits
96 GBRTX PRO 6000, GH200FitsFits
141 GBH200FitsFits

Every matrix, bit for bit

Every Linear layer's matrix packed and unpacked; H100 SXM, Sep 27, 2026.

Matrices in bf1659.8 GB
With Glyd, tiered layout40.2 GB
Change−32.7%

The 12-bit layout takes 24.7 to 24.8% off each matrix and decodes with less work. The ten-model report

Run it

git clone https://github.com/surya-koritala/Glyd
cd Glyd/gpu
python e2e.py /models/Qwen3-30B-A3B --format auto --fused \
  --merge --baseline --batch 1,8,32

Today Glyd runs from its PyTorch harness; vLLM and SGLang integration is not built yet.

Also measured

Twenty more open models measured, with quality wherever bf16 fits one GPU.