PyTorch 2.5 发布带来一些新特性和改进

主要亮点 (Highlights)]

  • SDPA CuDNN 后端 :为 torch.nn.functional.scaled_dot_product_attention 提供了新的 CuDNN 后端,可以在 NVIDIA H100 或更新的 GPU 上提供高达 75% 的加速。
  • torch.compile 区域编译 :通过 torch._dynamo.config.inline_inbuilt_nn_modules 允许编译重复的 nn.Module(例如大型语言模型中的变换器层)而无需重新编译,从而减少编译延迟。
  • TorchInductor CPU 后端优化 :包括 C++ 后端代码生成和 FX 融合,支持向量化和所有 Inductor IR 操作,兼容 Linux 和 Windows 系统。

PyTorch 2.5.0版本的发布带来了一系列新特性、改进、性能优化以及bug修复,旨在提升用户体验、增强功能和提高执行效率。以下是对PyTorch 2.5.0版本的全面总结:

新特性和改进

  1. SDPA CuDNN后端:引入了新的CuDNN后端,为使用H100或更新型号GPU的SDPA用户提供了默认的速度提升。

  2. torch.compile的区域编译 :允许用户编译重复的nn.Module,而无需重新编译,减少了编译延迟并可能轻微降低性能。

  3. TorchInductor CPU后端优化:包括CPP后端代码生成和FX融合,支持向量化操作和静态/符号形状,兼容Linux和Windows操作系统。

  4. FlexAttention API:一个灵活的API,允许用少量代码实现多种注意力机制,如滑动窗口、因果掩码等,并自动生成反向传播。

  5. 编译自动微分:作为PT2技术栈的扩展,允许捕获完整的反向传播过程,提高了自动微分的灵活性。

  6. 飞行记录器:一个调试工具,用于捕获集体操作的信息,帮助快速识别和解决作业卡住的问题。

  7. 最大自动调优CPU支持:Inductor CPU后端在编译时配置多个操作实现,并选择最佳性能的一个。

  8. TorchInductor在Windows上的支持:支持MSVC、clang和Intel编译器。

  9. FP16在CPU路径上的支持:支持在CPU上使用FP16数据类型,有助于提升性能。

  10. 自动加载设备扩展:简化了设备扩展的集成过程,无需手动导入。

  11. 增强的Intel GPU支持:扩展了对Intel GPU的支持,包括数据中心和客户端GPU。

向后不兼容的变更

  • 分布式处理:移除了一些旧的选项和方法,以反映代码结构的正确性。
  • 导出功能 :移除了dynamic_dim()方法,改用Dims来指定动态形状。
  • Inductor:更新了基准测试路径,从使用Triton的基准测试工具转移到内部Inductor工具。

性能优化

  • CUDA:为深度卷积反向操作生成内核,调整了tile启发式规则以提高性能。
  • 分布式:添加了CPU分析器的动态活动切换API。
  • Dynamo :手动实现了nn.Module.__getattr__nn.Module._call_impl,优化了小型元组的guard。
  • Inductor:添加了对BF16->FP32转换的NEON实现,支持了INT8数据类型的masked vectorization。

文档和开发者支持

  • 提供了详细的文档更新,包括新特性的使用说明、API文档的改进和错误信息的优化。

安全性更新

  • Inductor:放宽了对大小符号可以为0的统一检查。

其他改进

  • Autograd前端 :支持GradientEdge作为torch.autograd.grad的输出。
  • 分布式:引入了带有分析器的Flight Recorder,用于捕获集体操作的诊断信息。
  • Dynamo :引入了torch._dynamo.config.enable_compiler_collectives,用于跨等级同步编译。
  • 导出功能 :支持export_for_training,自动动态形状。
相关推荐
a1117763 小时前
医院挂号预约系统(开源 Fastapi+vue2)
前端·vue.js·python·html5·fastapi
0思必得03 小时前
[Web自动化] Selenium处理iframe和frame
前端·爬虫·python·selenium·自动化·web自动化
ar01233 小时前
AR远程协助作用
人工智能·ar
北京青翼科技3 小时前
PCIe接口-高速模拟采集—高性能计算卡-青翼科技高品质军工级数据采集板-打造专业工业核心板
图像处理·人工智能·fpga开发·信号处理·智能硬件
软件聚导航4 小时前
马年、我用AI写了个“打工了马” 小程序
人工智能·ui·微信小程序
陈天伟教授4 小时前
人工智能应用-机器听觉:7. 统计合成法
人工智能·语音识别
笨蛋不要掉眼泪5 小时前
Spring Boot集成LangChain4j:与大模型对话的极速入门
java·人工智能·后端·spring·langchain
昨夜见军贴06165 小时前
IACheck AI审核技术赋能消费认证:为智能宠物喂食器TELEC报告构筑智能合规防线
人工智能·宠物
摘星编程5 小时前
OpenHarmony + RN:Calendar日期选择功能
python
DisonTangor5 小时前
阿里开源语音识别模型——Qwen3-ASR
人工智能·开源·语音识别