SysSim¶
Estimate the step time and peak memory of LLM training — on hardware you don’t have — without running real computation.
SysSim models tensor, sequence, data, context, and pipeline parallelism and reports step time, MFU, and per-GPU memory (including per-pipeline-stage peaks and OOM) for distributed LLM training.
Install SysSim and run your first simulation in a few minutes.
Every public function, class, and CLI command, documented.
The two-file YAML system for models and hardware.
What the simulator models and how to read its report.
Why SysSim¶
Estimate training step time and MFU on accelerators you can’t access.
Compare parallelism strategies (TP / SP / DP / CP / PP) before allocating a cluster.
Predict peak per-GPU memory and catch OOM ahead of time.
Find the bottleneck — top ops by time, dominant op type, heaviest pipeline stage.
A 30-second taste¶
import syssim
report = syssim.simulate(
model="examples/configs/models/qwen3-1_7b.yaml",
hardware="examples/configs/hardware/isambard_gh200_4gpu.yaml",
parallelism=syssim.ParallelismConfig(tp=2, dp=2),
training=syssim.TrainingConfig(micro_batch=1, global_batch=8, dtype="bf16"),
)
print(report.step_time_ms, report.mfu, report.peak_memory_gb)