| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| transformer_engine_torch-2.20.2+cu13torch26.09cxx11abiTRUE-cp312-cp312-linux_x86_64.whl | 2026-10-05 | 1.2 MB | |
| transformer_engine_torch-2.20.2+cu12torch2.8.0+cu129cxx11abiTRUE-cp312-cp312-linux_x86_64.whl | 2026-10-05 | 970.9 kB | |
| transformer_engine_torch-2.20.2+cu13torch26.07cxx11abiTRUE-cp312-cp312-linux_x86_64.whl | 2026-10-05 | 1.2 MB | |
| transformer_engine_torch-2.20.2+cu13torch26.06cxx11abiTRUE-cp312-cp312-linux_x86_64.whl | 2026-10-05 | 1.2 MB | |
| README.md | 2026-10-05 | 12.1 kB | |
| v2.20.2 source code.tar.gz | 2026-10-05 | 6.3 MB | |
| v2.20.2 source code.zip | 2026-10-05 | 7.1 MB | |
| Totals: 7 Items | 17.9 MB | 0 | |
Transformer Engine v2.20.2 Release Notes
[!NOTE] The v2.20.0, v2.20.1 releases were skipped due to issues during the release process.
Key Features and Enhancements
- [Common, JAX, PyTorch] Added an experimental CuTeDSL backend for MXFP8 quantization, enabled at build time with
NVTE_WITH_CUTEDSL=1and selected at runtime withNVTE_ENABLE_CUTEDSL_BACKEND=1, with automatic fallback to CUDA C++ kernels. (#3137) - [Common, PyTorch] Added fused grouped MXFP8 paths for weighted SwiGLU and clamped-SwiGLU activation with columnwise quantization and for in-place requantization. (#3315) (#3359)
- [Common] Improved low-precision quantization performance with wider NVFP4 stochastic-rounding instructions, columnwise MXFP8 dBias reduction, register-resident MXFP8 cast kernels, and removal of an unused MXFP8 tile fetch. (#3357) (#3439) (#3459) (#3500)
- [Common, PyTorch] Added opt-in Quantile Balancing histogram accumulation to the fused sigmoid router, including two-kernel and fused-atomic modes. (#3395)
- [Common, PyTorch] Added native, row-scaled, and feature-gated fused grouped-MLP support for the SiTU-GLU activation. (#3402)
- [PyTorch] Enabled
torch.compile(fullgraph=True)forLinearwith supported FP8, MXFP8, and NVFP4 recipes and adopted current opaque custom-class registration where available. (#3053) (#3495) - [PyTorch] Added per-sequence mask, window, and diagonal-alignment policies to packed THD attention, with automatic padded or grouped dispatch. (#3274)
- [Common, PyTorch] Added a CUDA graph-capturable fused Expert Parallelism prepare-and-dispatch path and reduced eager dispatch/combine CPU overhead. (#3282) (#3380)
- [PyTorch] Added
NVTE_PLUGINsupport for loading alternate PyTorch backend implementations and overriding FlashAttention and attention-backend selection. (#3401) - [PyTorch] Reduced grouped-layer CPU overhead by avoiding redundant quantizer validation, reusing grouped-MLP fusion plans, and eliminating repeated device discovery. (#3405) (#3410)
- [PyTorch] Added paged-stashing metadata for saved
GroupedLinearactivation storage, including unquantized BF16 and FP16 rowwise tensors. (#3423) - [PyTorch] Reduced CUDA graph memory retention by releasing warmup and capture outputs when consumed and clearing per-callable replay state on reset. (#3427)
- [PyTorch] Added
ScaledTanhSReLU, a tanh-soft-clamped squared ReLU with per-row scaling and feature-gated cuDNN fused grouped-MLP support. (#3463) - [PyTorch] Added experimental cuDNN-backed
GatedDeltaProductAttention. (#3539) - [JAX] Added Hopper BF16 grouped GEMM support. (#3083)
- [JAX] Added
sqrtsoftplusscoring to fused MoE routing. (#3448) - [JAX] Enabled Expert Parallelism to borrow XLA's NCCL communicator when supported, added single-process multi-device execution, and defaulted bootstrap to the AllGather-scan metadata path with fused scan-dispatch support. (#3452) (#3522) (#3561)
- [Build] Improved source-build dependency discovery for CUDA, NVCC, headers, and libraries installed through Python packages. (#3251)
- [Build] Reduced highly parallel source-build time by splitting grouped activation CUDA translation units. (#3430)
Fixed Issues
- [Common] Fixed illegal memory accesses and incorrect results in TMA-based quantization by preserving shared-memory pointer provenance and correcting Grouped MXFP8 work mapping and descriptor synchronization. (#3482) (#3483)
- [Common] Fixed BF16 GEMM precision loss on L40 by excluding cuBLASLt split-K algorithms that store partial reductions in BF16. (#3440)
- [Common, JAX] Fixed race conditions between zeroing and routed gradient stores in Triton permutation kernels. (#3581)
- [PyTorch] Fixed fused grouped-MLP correctness for E5M2 backward gradients, padded single-group SReLU inputs, and unsupported GEGLU or SiTU-GLU configurations on Rubin. (#3352) (#3485) (#3567)
- [PyTorch] Fixed cuDNN grouped-MLP weight-gradient compilation, CUDA graph capture, and FC1/FC2 corruption by retaining separate persistent descriptor workspaces. (#3579)
- [PyTorch] Fixed quantized parameter integration by supporting MXFP8 master-weight casts on ranks with empty shards and preserving quantized-tensor subclasses across
detach()and C++ bindings. (#3348) (#3393) - [PyTorch] Fixed delayed-scaling FP8 activation-recompute metadata pairing for evaluation mode, mode transitions, nested checkpoints, and checkpoint entry under disabled autograd. (#3394)
- [PyTorch] Fixed delayed weight-gradient computation when an external consumer clears an eagerly computed FP8 bias gradient before
backward_dw(). (#3400) - [PyTorch] Fixed
FusedAdamwith different parameter and gradient dtypes in capturable mode and prevented tensor-handle pool exhaustion for highly fragmented parameter groups. (#3414) (#3418) - [PyTorch] Fixed Quantile Balancing router capture and replay with mutable bin bounds through an explicit trusted-producer validation handshake. (#3426)
- [PyTorch] Fixed non-fused and BF16 activation paths from failing when
activation_recompute_in_mlp=True; unsupported paths now warn and proceed without recomputation. (#3436) - [PyTorch] Fixed NCCL-EP zero-copy MXFP8 scale offsets for symmetric-memory windows and made offset resolution compatible with older and newer PyTorch APIs. (#3447) (#3466)
- [PyTorch] Made fused grouped-MLP
dprobbit-exact when deterministic algorithms are requested and a supporting cuDNN Frontend is installed. (#3407) - [PyTorch] Replaced deprecated TorchScript fallbacks with eager execution when
torch.compileis disabled or unsupported. (#3502) - [JAX] Fixed fused-attention backward output-gradient sharding, rotated THD metadata handling, and compound DP/FSDP test-data placement. (#3516)
- [PyTorch] Fixed NVFP4 stochastic-quantization corruption and invalid memory reads by retaining the owning RNG tensors through dispatch. (#3533)
- [Common, PyTorch] Fixed distributed Newton-Schulz numerical correctness, workspace sizing and lifetime, and validation of unsupported matrix dimensions. (#3541)
- [Build, PyTorch] Fixed source builds to gate NCCL-EP consistently on targeted GPU architectures and available PyTorch symmetric-memory support. (#3396)
- [Common, JAX, PyTorch] Fixed NCCL-EP synchronization, timeout, and shared-workspace failures and added validated compatibility for builds using NCCL 2.30.5–2.30.x with newer NCCL runtimes through
NCCL_DEV_API_JIT. (#3619)
Breaking Changes in This Release
- [Common, JAX, PyTorch] Raised the minimum supported cuDNN version from 9.3 to 9.12.0, added configure-time, build-time, import-time, and runtime enforcement, and deprecated the now-obsolete experimental
nvte_get_runtime_num_segments. (#3236) - [Common, PyTorch] Added MXFP8 support to cuBLASMp communication-overlap GEMMs and raised the minimum cuBLASMp version for
NVTE_WITH_CUBLASMP=1from 0.8.0 to 0.8.1. (#3145) - [Common, PyTorch] Reduced P2P context-parallel attention forward temporary storage from O(CP) to O(1); callers of experimental
nvte_cp_thd_out_correctionmust pass the newold_lseargument. (#2916) - [PyTorch] Added attention-logit softcapping to
DotProductAttention,MultiheadAttention, andTransformerLayer; callers passing optional arguments afterbottom_right_diagonalpositionally must switch to keyword arguments. (#3391) - [PyTorch] Added experimental
GatedDeltaNet2Attentionand a shared linear-attention base API; experimentalGatedDeltaNetAttentionno longer acceptsnameor derives fromTransformerEngineBaseModule, and source builds now requirenvidia-cudnn-frontend>=1.29.0. (#3521)
Deprecated Features
- [Common, JAX, PyTorch] Added opaque-handle v2 fused-attention C APIs, deprecated the legacy
nvte_get_fused_attn_backend,nvte_fused_attn_fwd, andnvte_fused_attn_bwdshims, and removedNVTE_FUSED_ATTN_BACKENDin favor of automatic backend selection. (#2964)
Known Issues in This Release
- [Common] cuBLAS 13.7.0 through 13.8.0 may silently leave grouped-GEMM output tiles unwritten on Blackwell and Rubin when NCCL kernels run concurrently, producing incorrect gradients. No Transformer Engine workaround is available; upgrade to cuBLAS 13.8.1 or later. (#3578)
- [Common, Build] Building or running Transformer Engine with cuSOLVERMp support enabled against CUDA Toolkit 13.4 Update 1 and cuSOLVERMp 0.9.1 or earlier may fail with unresolved cuSOLVER symbols while linking, loading, or using the Transformer Engine library. If affected, use the base CUDA Toolkit 13.4 release instead.