POET-X: Memory-efficient LLM Training by Scaling Orthogonal Transformation
Organizations: The Chinese University of Hong Kong · MPI for Intelligent Systems · University of Cambridge · Huawei Technologies
Abstract
Efficient and stable training of large language models (LLMs) remains a core challenge in modern machine learning systems. To address this challenge, Reparameterized Orthogonal Equivalence Training (POET), a spectrum-preserving framework that optimizes each weight matrix through orthogonal equivalence transformation, has been proposed. Although POET provides strong training stability, its original implementation incurs high memory consumption and computational overhead due to intensive matrix multiplications. To overcome these limitations, we introduce POET-X, a scalable and memory-efficient variant that performs orthogonal equivalence transformations with significantly reduced computational cost. POET-X maintains the generalization and stability benefits of POET while achieving substantial improvements in throughput and memory efficiency. In our experiments, POET-X enables the pretraining of billion-parameter LLMs on a single Nvidia H100 GPU, and in contrast, standard optimizers such as AdamW run out of memory under the same settings.
Figures & tables
| Hidden Dim. | PyTorch (ms) | Ours (ms) | Speedup |
| 2048 | 1.621 | 0.086 | 18.75 |
| 4096 | 3.269 | 0.167 | 19.57 |
| 8192 | 6.584 | 0.393 | 16.76 |
| 16384 | 13.246 | 0.946 | 14.00 |
| Hidden Dim. | 4 permute (ms) | 2 permute (ms) | Speedup |
| Block size = 256, Compiled = False | |||
| 4096 | 15.858 | 12.017 | 1.32 |
| 8192 | 38.583 | 31.028 | 1.24 |
| 16384 | 120.869 | 94.280 | 1.28 |
| Block size = 256, Compiled = True | |||
| 4096 | 8.705 | 7.496 | 1.16 |
| Seq. Length | PyTorch (ms) | Ours (ms) | Speedup |
| 2048 | 0.790 | 0.334 | 2.37 |
| 4096 | 1.525 | 0.642 | 2.38 |
| 8192 | 2.918 | 1.266 | 2.30 |
| 16384 | 6.120 | 2.661 | 2.30 |
| Seq. Length | PyTorch (MB) | Ours (MB) | Reduction |
| 2048 | 280 | 192 | 31.43% |
| 4096 | 360 | 272 | 24.44% |
| 8192 | 520 | 432 | 16.92% |
| 16384 | 840 | 752 | 9.55% |
| N | PyTorch (ms) | Triton (ms) | Speedup |
| Block Size = 256 | |||
| 64 | 0.316 | 0.107 | 2.96 |
| 128 | 0.610 | 0.204 | 2.99 |
| 192 | 0.881 | 0.297 | 2.97 |
| 256 | 1.156 | 0.388 | 2.98 |
| 320 | 1.404 | 0.479 | 2.93 |
| Method | Params (M) | Mem (G) | Val PPL |
| AdamW | 2764.47 | 81.03 | 12.69 |
| Muon (Kimi) ( Liu et al., 2025a ) | 2764.47 | 70.94 | 11.45 |
| APOLLO ( Zhu et al., 2025 ) | 2764.47 | 80.60 | 12.97 |
| GaLore ( Zhao et al., 2024 ) | 2764.47 | 74.50 | 14.88 |
| 366.64 | 60.58 | 12.76 | |
| 570.06 | 68.52 | 12.05 |
| Method | Params (M) | Mem (G) | Val PPL |
| Quantized 8-bit APOLLO | 2764.47 | 66.37 | 20.49 |
| Quantized 8-bit GaLore | 2764.47 | 66.28 | 17.74 |
| 366.64 | 51.66 | 16.21 | |
| 570.06 | 60.65 | 14.78 |
| Method | Sequence Length 512 | Sequence Length 1024 | ||||||
| 1 1 H100 | 1 8 H100 | 1 1 H100 | 1 8 H100 | |||||
| 8B | 13B | 8B | 13B | 8B | 13B | 8B | 13B | |
| 8-bit Q-APOLLO | 2.52 | 1.55 | 18.63 | 11.47 | 4.24 | 2.63 | 31.85 | 19.72 |
| 8-bit Q-GaLore | 2.25 | 1.32 | 18.66 | 11.49 | 3.86 | 2.30 | 31.81 | 19.70 |
| 2.77 | 1.82 | 21.96 | 14.22 | 4.12 | 2.72 | 32.41 | 21.67 | |
| 2.30 | 1.54 | 17.90 | 11.93 | 3.56 | 2.37 | 28.27 | 18.75 | |
| Method | Llama-3B | Llama-8B | Llama-13B | ||||||
| AdamW | 28.74 | 28.78 | 31.43 | 78.89 | 76.34 | 78.69 | OOM | OOM | OOM |
| Muon | 18.62 | 19.27 | 21.82 | 50.30 | 53.46 | 54.98 | 76.32 | 77.02 | OOM |
| APOLLO | 19.74 | 20.40 | 21.32 | 51.34 | 53.49 | 56.94 | OOM | OOM | OOM |
| GaLore | 19.06 | 20.17 | 21.16 | 44.52 | 45.62 | 54.71 | 67.15 | 67.86 | 73.37 |
| 13.60 | 16.79 | 22.68 | 27.90 | 33.63 | 43.78 | 42.48 | 49.78 | 63.50 | |
| Seq. Length 512 (Llama-8B) | Seq. Length 2048 (Llama-8B) | Seq. Length 512 (Llama-13B) | Seq. Length 2048 (Llama-13B) | |||||||||
| 1x1 H100 | 8x8 H100 | Ratio | 1x1 H100 | 8x8 H100 | Ratio | 1x1 H100 | 8x8 H100 | Ratio | 1x1 H100 | 8x8 H100 | Ratio | |
| AdamW | 7.60 | 186.16 | 24.5 | OOM | 437.21 | N/A | OOM | 105.98 | N/A | OOM | 273.02 | N/A |
| 5.28 | 310.59 | 58.8 | 6.42 | 396.97 | 61.8 | 3.68 | 217.52 | 59.1 | 4.42 | OOM | N/A | |
| 4.03 | 228.80 | 56.8 | 4.82 | 298.41 | 61.9 | 2.81 | 166.78 | 59.3 | 3.26 | OOM | N/A | |
| 3.73 | 199.95 | 53.7 | 5.92 | 362.75 | 61.2 | 2.74 | 136.14 | 49.7 | 4.02 | 246.47 | 61.3 | |
| 3.16 | 166.92 | 52.9 | 5.26 | 315.18 | 59.9 | 2.22 | 112.10 | 50.5 | 3.58 | 228.07 | 63.7 | |
Appendix figures & tables6 assets
Supplementary material from the paper’s appendix.
Appendix
| Parameter | Llama 3B | Llama 8B | Llama 13B |
| Hidden dimension | 2560 | 4096 | 5120 |
| Intermediate dimension | 7168 | 14336 | 13824 |
| Number of attention heads | 32 | 32 | 40 |
| Number of hidden layers | 32 | 32 | 40 |
| Model | Spec. | # GPU | lr (base) | lr (POET) | POET reset gap | training steps | batch size | grad acc. |
| Llama 3B | 8 | 1e-3 | 400 | 600,000 | 64 | 1 | ||
| 8 | 1e-3 | 400 | 600,000 | 64 | 1 |
| Model | Spec. | # GPU | lr (base) | lr (POET) | POET reset gap | training steps | batch size | grad acc. |
| Llama 3B | 8 | 1e-3 | 400 | 100,000 | 64 | 1 | ||
| 8 | 1e-3 | 400 | 100,000 | 64 | 1 |
| Llama-8B | Sequence Length 512 | Sequence Length 1024 | Sequence Length 2048 | ||||||
| 1x1 H100 | 8x8 H100 | Ratio | 1x1 H100 | 8x8 H100 | Ratio | 1x1 H100 | 8x8 H100 | Ratio | |
| AdamW | 7.60 | 186.16 | 24.5 | 9.34 | 277.53 | 29.7 | OOM | 437.21 | N/A |
| LoRA - 160 | 5.28 | 310.59 | 58.8 | 6.20 | 374.87 | 60.5 | 6.42 | 396.97 | 61.8 |
| LoRA - 320 | 4.03 | 228.80 | 56.8 | 4.58 | 273.35 | 59.7 | 4.82 | 298.41 | 61.9 |
| 3.73 | 199.95 | 53.7 | 5.29 | 294.25 | 55.6 | 5.92 | 362.75 | 61.2 | |
| 3.16 | 166.92 | 52.9 | 4.42 | 261.32 | 59.2 | 5.26 | 315.18 | 59.9 | |
| Architecture | Method | Val PPL ( ) | Memory (GB) ( ) |
| Qwen3 1B | AdamW | 14.78 | 36.09 |
| POET-X | 14.67 | 29.42 | |
| Qwen3 MoE 1B | AdamW | 16.89 | 28.41 |
| POET-X | 15.38 | 27.51 |
LLM Training
Large language model training studies the data, objectives, optimizers, and systems used to build and adapt language models.
See all 342 papers