Primus
Primus/Primus-LM is a flexible and high-performance training framework designed for large-scale foundation model training and inference on AMD GPUs. It supports pretraining , post-training , and reinforcement learning workflows with multiple backends including Megatron-LM , TorchTitan alongside ROCm-optimized components.
Please refer to ROCm documentation here for more details.
Release Notes
v26.4
Update ROCm to 7.14 (TheRock based build)
Upgrade PyTorch to 2.12
Enabled release wheels for pip install
Introduce FP4 training example
Introduce MXFP8 training examples with Primus Turbo enhanced kernels
Introduce Primus native SFT and LoRA trainer
Introduce tuning agent - agent based scaling strategy explore and suggestion based on Primus Projection tool
Release version aligned between docker images and Primus repo release tags
Known issues:
Segfault during process teardown with Megatron-Bridge based workload
MI355X Llama-3.1-70B BF16 (TorchTitan) performance regression ~8% due to updated checkpoint recompute behavior of PyTorch
Performance regression of zebra-llama-1b model
v26.3
HipblasLT regression of v26.2 fully fixed on MI355X (Thanks to HIPBLASLt team for the collaobrative support!)
Upgrade Megatron-LM backend to more recent upstream
Primus Turbo update to more recent version
GEMM/Grouped GEMM Triton backend.
AITER asm mxfp4 GEMM integration.
MoE Package 2.0 enabled, more tuned recipes for large scale MoE training
Performance highlights:
MoE performance improved with MoE Package 2.0 (4-13% improvement on MoE models)
Performance optimization on Mamba models and showing close to 2x performance comparing to v26.2
Known issues:
Memory usage increased on legacy LLama models
v26.2
Upgrade to ROCm 7.2
Primus
Primus Perf Projection Modeling Toolkit
Added Primus Finetuning support w/ Megatron-Bridge (functional supporting, performance optimization on-going)
Added Hybrid Model Support with Primus (functional supporting, performance optimization on-going)
Reduced docker size by 50+% for lighter weight deployments
v26.1
Added default AINIC support
Primus update
Introducing CLI interface
Updated libraries
Transformer Engine
HipBlasLT
v25.11
Primus-LM 0.6.0
Updated MAD to align with Primus Examples
MoE performance further improved up to 28% from v25.10 with fully enabled MoE package
v25.10
Merge MI300X and MI355X docker
Primus TorchTitan backend upgrade to recent version
Primus Megatron backend upgrade to recent version
Primus v0.4.0
Support MLFlow
Improved Megatron-LM profiling
MoE Package Feature available:
MoE CPU Sync-free
1f1b MoE overlapping
Zero-bubble
Router Fusion
Tools
Model based memory projection/modeling tool
Primus-Turbo v0.2.0
FP8 GEMM
Grouped GEMM
DeepEP support
Added Primus Torchtitan MoE support with matching performance of PyTorch Conference presentation
Diffusion Benchmark with Video Gen models
Hunyuan Video
Wan2.1-I2V
Mochi-1
Performance update
Torchtitan avg 2.6% uplift
Torchtune avg 1.6% uplift
Megatron mi300/325 0.42% drop, mi355 4% uplift
v25.9
ROCm 7.0 support
Combined PyTorch Docker supports
Primus with Megatron-LM and Torchtitan backend - v0.3.0
Primus Turbo - v0.1.1
Finetuning
Added/updated Diffusion Benchmark support for following models
Flux with smaller testing dataset
SDXL
Support MI300X, MI325X, MI350X, MI355X
Known Issue:
Separate images for MI300X/MI325X and MI350X/MI355X due to cross architecture compatibility issues, to be fixed in v25.10 release