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,自动动态形状。
相关推荐
_一条咸鱼_5 分钟前
探秘神经网络激活函数
人工智能·深度学习·面试
星鹿XINGLOO7 分钟前
ChatGPT语音功能在iPad上支持吗?全面解答!
人工智能·安全·ios·ai·chatgpt·语音识别·ipad
娃娃略11 分钟前
【AI模型学习】Moco(下)——巧妙的队列设计
人工智能·python·神经网络·学习·算法·机器学习
攻城狮7号18 分钟前
Python爬虫第15节-2025今日头条街拍美图抓取实战
爬虫·python·python爬虫
jndingxin18 分钟前
OpenCV 图形API(37)图像滤波-----分离过滤器函数sepFilter()
人工智能·opencv·计算机视觉
快乐点吧27 分钟前
【代理错误 django】Request error: HTTPSConnectionPool(host=‘‘, port=443): 、
后端·python·django
好看资源平台30 分钟前
神经光子渲染:物理级真实感图像生成——从麦克斯韦方程到深度学习
人工智能·深度学习
diu_lei1 小时前
DeepSpeed ZeRO++:降低4倍网络通信,显著提高大模型及类ChatGPT模型训练效率
人工智能
meisongqing1 小时前
【大模型】GPT-4、DeepSeek应用与Prompt使用技巧
人工智能·大模型·prompt
努力毕业的小土博^_^1 小时前
【EI/Scopus顶会矩阵】2025年5-6月涵盖统计建模、数智转型、信息工程、数字系统、自动化系统领域,硕博生执笔未来!
人工智能·深度学习·线性代数·计算机视觉·矩阵·自动化·媒体