pytorch/pytorch PyTorch 2.12.0 Release
Key point
PyTorch 2.12.0 significantly boosts CUDA performance, expands support for graph capture/replay, quantization export, and fused optimizers, while SVE build checks become stricter.
Details
Breaking changes
- SVE compile checks in FindARM.cmake have been strengthened, so source builds with incorrect SVE configurations that previously passed may now fail at the CMake configuration stage.
Key features
- Added torch.accelerator.Graph API: unifies graph capture/replay across CUDA, XPU, and out-of-tree backends.
- torch.export.save now supports Microscaling (MX) quantization formats, enabling export of more heavily compressed models.
- Adagrad now supports fused=True, allowing it to use the single-kernel optimizer implementation alongside Adam, AdamW, and SGD.
- torch.cond control flow can now be captured/replayed inside CUDA Graphs.
- ROCm now supports expandable memory segments, rocSHMEM symmetric memory collectives, and FlexAttention pipelining.
Performance improvements
- Batched linalg.eigh on CUDA is up to 100x faster thanks to updated cuSolver backend selection.