2.15.02주 전
PyTorch 2.15.0 Release
핵심 내용
PyTorch 2.15.0은 NCCL 백엔드 재작성 및 FSDP2 강화, Apple Silicon과 AArch64 대상 대규모 성능 최적화, 그리고 Python 3.11 이상 및 CUDA 13.2 호환성 요구 사항 변경을 핵심으로 한다.
자세히 보기
Breaking Changes & Deprecations
- NCCL 백엔드 재작성: 차기 버전에서
nccl-legacy제거 예정. - FSDP2 동작 변경:
reduce_dtype=None시grad_dtype사용으로 변경되어 기존 동작 유지 시 명시적 설정 필요 (BC-breaking). - 호환성 제한: Python 3.11 이상(3.15 지원) 필수, CUDA 13.2 wheels 제공(
cu126/cu130제거), ROCm 7.14/10.0(gfx900/906제거), macOS 15 이상(MPS) 요구. - 보안 및 안정성 제한: Nested tensor 로드 시
safe_globals필수,import torch재실행 및weights_only=True내 nested tensor 차단, 2.15 checkpoint가 2.14 이하와 비호환.
Major New Features
- AOTI: C++ wrapper에서
nested_compile_region, TMA TensorDescriptor,launch_pdl지원. 예외 대신AOTI_RUNTIME_FAILURE반환, 컴파일 시 피크 메모리 감소,aoti_load_package가 추출된 디렉터리를 직접 로드. - Export & AOTDispatcher: Non-strict export
TORCH_TRACE로그에 compile/frame ID 포함.inference_mode영역에서 AOTAutograd cache 우회 중단. - Composability:
histogramdd메타 구현, symbolic 차원 유지, sparse compressed tensor fake-tensor tracing 지원. - Quantization: CUDA quantized
embedding_bag에서 pruned tables 지원. - C++ Frontend: no-GIL inline C++ extension,
TORCH_TARGET_VERSION호환성 체크, Windows ARM64 CUDA 빌드 지원. - Release Engineering: CUDA 13.4(cuBLAS 13.8.1, cuDNN 9.26) Linux/Windows 휠, Triton 3.9 번들, ROCm
gfx1250(MI450) 및 ROCm 10.0 CI, XPU 휠 Intel Deep Learning Essentials 2026.1.3 업데이트, NVSHMEM 3.7.2 업그레이드. - 플랫폼별 기능: CUDA float8 scatter/graph annotation, CPU NEON sum/norm AVX2/SVE256, MPS
logspace/complex64/grouped_mm/int_mm, ROCm RDNA4 SDPA/AOTriton 0.14.2b, XPU linalg ops/mixed-precision Adam/SDPA GQA, ROCm MI300 FP8 2:4 sparsity 지원.
Performance Improvements
- Apple Silicon: MoE decode 1.32–1.34x 향상.
- AArch64:
sin/cos1.7–2.4x 향상(SLEEF 3.5-ULP), QNNPACK linear 2-4배 향상, LLVM BOLT 기본 적용(최대 30% 향상), Graviton 4/5 BF16 GEMV 5배 향상. - Windows: RTX 5090 GQA bf16 forward 11.5ms→0.49ms 단축.
- 핵심 연산: RMSNorm backward 2배 향상, cpp_wrapper 오버헤드 40-50% 감소, Dynamo 컴파일 시간 4.2s 단축, Inductor GB300 HBM 대역폭 2배 증가, gfx950 FlexAttention 1.8-2.3배 향상, AOTDispatcher min-cut partitioner 5% 고속화.
- CUDA/CPU: CUDA upsample 5-25배 향상, H100 topk 2.16배 향상, gather/scatter 지연 10-30배 수정.
Key Bug Fixes
- 보안:
torch.loadNEWOBJ opcode,shm_manager버퍼 오버플로우, builtin exception allowlist 취약점 수정. - torch.compile/Inductor: 4x RNG 비활성화(2.13 회귀), in-place, reshape, reduction, FP8 scaled_mm, SDPA, fusion, compile,
log_ndtr, float16 scan float32 누적, boolean index_put 수정. 1000배 TFLOPS 오차, addmm fusion 수정. - Triton/Inductor: float16/bfloat16 scans, XPU, CUDA Graphs, autotuning, FlexAttention, NVGEMM, CPU backend 수정.
- 기타: fp8
isfinite오류,linspace정밀도(0.8105→0.8110), RNN/SDPA/grid_sample, Muon, Autograd, c10d, Distributed(port/Etcd/TCPStore/log), RPC(RRef use-after-free), Linear Algebra(2차 forward AD,matrix_exp, CPU_int_mm), Profiler(device time, Cuspy heap, MemoryViz), FX(symbolic bool, cached graph, pickling, BSR/BSC,replace_pattern, memory leak), Dynamo(-0.0/NaN guard, autocast,isinstance/Protocol, random stale, gradient, optimizer capturable,out=recompilation, memory leak, crash) 문제 해결. - 플랫폼 특정: cuDNN 9.26 포함으로 Hopper/B200 NaN 및 손상 문제 해결, AVX2 double-int64 변환 0 방향 절단, Arm CPU uint8 변환 랩어라운드 및 4-bit matmul 컴파일 오류, MPS linalg/
torch.compile/메모리 관리/다중 스레드 크래시 및 잘못된 결과 수정. MPS 다중스레드 hang, DLPack,linalg.svd, 복소수 연산,var/std, int64 truncate 수정. ROCm attention, SDPA, FP8 GEMM, Inductor BF16, topk, hipify, RCCL 경고 수정.