摩尔线程发布Torch-MUSA v2.7.0,超千种专属算子更新发布

摩尔线程发布Torch-MUSA v2.7.0版本,新增超过1050个专属算子,这一更新为开发者提供了更强大的性能和更丰富的功能,优化了用户体验和工作效率,Torch-MUSA是摩尔线程专为深度学习应用优化的计算库,此次更新将为其带来更多可能性,推动人工智能领域的发展。

11月28日,摩尔线程正式推出pytorch深度学习框架的最新musa扩展版本——torch-musa v2.7.0。此次更新在功能集成、性能调优以及硬件兼容性方面均实现了显著提升。

摩尔线程发布Torch-MUSA v2.7.0,超千种专属算子更新发布

尤为引人注目的是,在短短一个月内,Torch-MUSA接连发布了v2.5.0与v2.7.0两个重要版本,展现出快速迭代与高效开发的能力。

此外,自v2.5.0版本起,Torch-MUSA的版本号已与PyTorch主版本保持一致,便于开发者更直观地识别和管理依赖关系,降低使用门槛。

本次发布的v2.7.0版本进一步整合了muSolver、muFFT等高性能计算库,大幅提升了复杂算法任务的运行效率;

同时新增对统一内存设备(Unified Memory)UMM的支持,有效改善内存资源的利用效率。

该版本持续保持与最新MUSA SDK的兼容性,支持使用MUSA SDK 4.2.0至4.3.0及更高版本进行编译构建。

截至目前,Torch-MUSA已专属支持超过1050个算子,系统整体在性能和稳定性方面持续优化,为大规模模型的训练与推理提供了更加高效可靠的底层支撑。

下一个规划版本将是v2.9.0,将继续聚焦于性能增强与功能完善,稳步推进基于MUSA架构的国产全功能GPU深度学习生态建设。

▼ Torch-MUSA开源地址:

https://www.php.cn/link/7905b0944f96ad2ec318855ae68fed89

摩尔线程发布Torch-MUSA v2.7.0:专属算子超过1050个


v2.7.0 版本核心更新

新增功能

动态双精度转换(Dynamic Double Cast)
通过设置环境变量 export TORCH_USE_MUSA_DOUBLE_CAST=1,可启用Float64类型算子的动态降级机制,torch_musa将自动采用float32作为实际计算精度,兼顾精度需求与运算效率。

分布式检查点(Distributed Checkpoint)
支持多rank并行加载与保存模型状态,显著加快检查点操作速度。当前已实现异步保存功能,适用于大规模分布式训练场景。

功能增强

▼ 新增 Poisson、binomial、_standard_gamma、_sample_dirichlet、vdot、upsample(1d/2d/3d with aa)、flash_attention、transformer_encoder_layer 等多个常用算子,MUSA专属算子总数突破1050个。

▼ 基于PyTorch底层升级,进一步强化 torch.compile 与 AOTInductor 的支持能力;

▼ 默认开启 TF32 计算模式,提升浮点密集型任务的执行效率;

▼ 升级性能分析工具 Kineto 至2.7.0版本,并优化其运行稳定性;

▼ 持续改进 FSDP2 流水线并行策略,进一步压缩显存占用。


v2.5.0 版本核心更新

新增特性

▼ 集成 muFFT 与 muSolver 加速库,显著拓展科学计算与工程仿真领域的应用潜力;

▼ 在边缘计算SoC设备中引入统一内存管理机制,基于Arm架构的UMA设计,实现CPU与GPU共享同一物理内存空间,带来以下优势:

  • 避免GPU端重复分配内存;
  • 减少主机与设备间的冗余拷贝;
  • GPU可直接访问由CPU分配器管理的内存区域。

算子扩展与性能优化

▼ 新增 ilshift、irshift、replication_pad1d_bwd、angle、ctcLossTensor、ctcLossTensorBwd、logit、amin/amax/prod.dim_int、glu_bwd 等多个算子支持;

▼ 初步支持基础 Sparse(CSR) 相关操作;

▼ 扩展量化算子覆盖范围;

▼ 修复 torch.norm 存在的形状推导错误问题;

▼ 支持 reduce_sum 接收 uint8 输入并输出 int64 结果;

▼ C++扩展中新增 tensor.is_musa() 方法;

▼ 修正空输入情况下 argmax/argmin 的异常行为;

▼ 优化 var/std、pad、convolution3d、layer_norm 等关键操作的执行性能。

系统功能增强

▼ 开放接口 torch.musa.mccl.version(),便于用户查询MCCL版本信息;

▼ 支持获取当前MUSA BLAS及BLASLt句柄:getCurrentMUSABlasHandle 与 getCurrentMUSABlasLtHandle;

▼ 优化FSDP2流水线并行策略,有效降低训练过程中的内存消耗。

网友留言(0 条)

发表评论