PyTorch
Data & MLTensors and Dynamic neural networks in Python with strong GPU acceleration
Release History
View all versions →v2.13.0Breaking1 fix9 featuresPyTorch 2.13 introduces significant performance features like FlexAttention on MPS and the CuTeDSL backend for Inductor, alongside major internal cleanups including the removal of Bazel support and named tensors. This release contains several breaking changes, particularly around C++ APIs and Python interpreter version support.
v2.12.13 fixesThis release focuses on fixing regressions and silent correctness issues, primarily related to GPU operations using Triton and memory access bugs.
v2.12.0Breaking6 featuresPyTorch 2.12 introduces significant performance improvements, notably in batched linalg.eigh on CUDA and fused Adagrad optimization. This release also enforces stricter build requirements, including C++20 and CUDA 12.6 for source builds, and updates distributed functional API usage within torch.compile.
v2.11.0Breaking5 featuresPyTorch 2.11 introduces major highlights like Differentiable Collectives and FlexAttention updates, but enforces breaking changes by moving PyPI wheels to CUDA 13.0 and modifying APIs for variable length attention and hub loading.
v2.10.0Breaking14 featuresPyTorch 2.10 introduces Python 3.14 support for torch.compile, new features like combo-kernels fusion and LocalTensor for distributed debugging, and removes several deprecated or legacy functionalities across ONNX, Dataloader, and nn modules.
v2.9.1Breaking12 fixes3 featuresThis maintenance release addresses critical regressions in PyTorch 2.9.0, specifically fixing memory issues in 3D convolutions, Inductor compilation bugs for Gemma/vLLM, and various distributed and numeric stability fixes.
v2.9.0Breaking1 fix7 featuresPyTorch 2.9.0 introduces Python 3.10 as the minimum requirement, defaults the ONNX exporter to the Dynamo-based pipeline, and adds support for symmetric memory and FlexAttention on new hardware.
v2.8.0Breaking3 fixes10 featuresPyTorch 2.8.0 introduces high-performance quantized LLM inference on Intel CPUs, SYCL support for CPP extensions, and stricter validation for autograd and torch.compile. It includes significant breaking changes regarding CUDA architecture support and internal configuration renames.
v2.7.1Breaking16 fixes3 featuresThis maintenance release focuses on fixing regressions and silent correctness issues across torch.compile, Distributed, and Flex Attention, while also improving wheel sizes and platform-specific compatibility for MacOS, Windows, and XPU.
v2.7.0Breaking1 fix9 featuresPyTorch 2.7.0 introduces Blackwell support and FlexAttention optimizations while enforcing stricter C++ API visibility and Python limited API compliance. It marks a significant shift in ONNX and Export workflows by deprecating legacy capture methods in favor of the unified torch.export API.
v2.6.0Breaking10 featuresPyTorch 2.6 introduces Python 3.13 support for torch.compile, FP16 support for X86 CPUs, and new AOTInductor packaging APIs. It includes a significant security change making torch.load use weights_only=True by default and deprecates the official Anaconda channel.
Common Errors
NotImplementedError5 reportsThis error typically occurs in pytorch. Check the example issues for common solutions.
RuntimeError4 reportsThis error typically occurs in pytorch. Check the example issues for common solutions.
ProcessRaisedException3 reportsProcessRaisedException in PyTorch often arises from issues within multiprocessing contexts, specifically related to CUDA device handling or argument mismatches during distributed operations or within TorchInductor. Ensure CUDA devices are correctly initialized and visible to all processes, and verify that all function/class calls within multiprocessing conform to the expected argument count and types as defined by PyTorch or TorchInductor APIs, paying special attention to distributed configurations.
NoValidChoicesError2 reportsThe "NoValidChoicesError" in PyTorch Inductor usually indicates that no viable backend implementations (e.g., GEMM, convolution) are found that satisfy all constraints for a given operation, often due to unsupported data types, shapes, or hardware features. To fix this, either rewrite the operation using supported data types/shapes/layouts, or investigate and potentially enable/implement a missing backend implementation in Inductor that fulfills the requirements (often requires understanding Inductor's code generation).
UncapturedHigherOrderOpError2 reportsThis error typically occurs in pytorch. Check the example issues for common solutions.
EngineDeadError2 reportsEngineDeadError in PyTorch, especially with `torch.compile`, often arises from C++ compilation failures within the inductor backend. This usually stems from incompatible compiler versions or missing dependencies during JIT compilation of optimized code. To resolve this, ensure your compiler (GCC or Clang) is a supported version for PyTorch and that necessary build tools are installed (e.g., build-essential on Linux); additionally, try cleaning the PyTorch cache (`torch._dynamo.reset()`) and recompiling, or reverting to a stable PyTorch version might help.
Related Data & ML Packages
An Open Source Machine Learning Framework for Everyone
🤗 Transformers: the model-definition framework for state-of-the-art machine learning models in text, vision, audio, and multimodal models, for both inference and training.
scikit-learn: machine learning in Python
Flexible and powerful data analysis / manipulation library for Python, providing labeled data structures similar to R data.frame objects, statistical functions, and much more
Streamlit — A faster way to build and share data apps.
Build and share delightful machine learning apps, all in Python. 🌟 Star to support our work!
Subscribe to Updates
Get notified when new versions are released