首页
/ MLX框架v0.25.0版本发布:深度优化与关键特性解析

MLX框架v0.25.0版本发布:深度优化与关键特性解析

2025-06-01 05:35:30作者:宣聪麟

MLX是苹果推出的一个专为机器学习设计的开源框架,它针对苹果芯片进行了深度优化,能够高效利用M系列芯片的神经网络引擎。该框架提供了简洁的API接口和高效的运算能力,特别适合在Mac设备上进行机器学习模型的训练和推理。

性能优化亮点

本次v0.25.0版本带来了多项显著的性能改进,其中最值得关注的是内存优化和计算加速方面的突破。

自定义logsumexp降低训练内存

新版本引入了自定义的logsumexp实现,这一改进在训练过程中显著降低了内存占用。logsumexp是机器学习中常用的数值稳定计算技术,特别是在概率模型和softmax计算中。传统实现往往需要存储中间结果,而MLX的新实现通过优化计算流程,减少了中间变量的存储需求,使得在资源受限的设备上也能训练更大规模的模型。

深度可分离卷积加速

深度可分离卷积(Depthwise Separable Convolutions)是现代轻量级神经网络架构(如MobileNet)中的核心组件。MLX v0.25.0对其进行了专门优化,实现了比PyTorch快达4倍的运算速度。这一优化使得在移动设备上部署高效CNN模型成为可能,为边缘计算场景提供了更强有力的支持。

批处理Gather MM/QMM加速MoE提示处理

针对混合专家模型(MoE)的提示处理,新版本引入了批处理Gather矩阵乘法(MM)和量化矩阵乘法(QMM)操作,实现了约2倍的性能提升。MoE模型因其稀疏激活特性而备受关注,但传统实现中专家路由带来的数据收集(Gather)操作往往成为性能瓶颈。MLX的这一优化显著改善了MoE模型的实时响应能力。

核心功能增强

计算能力扩展

框架新增了对复数矩阵乘法(gemm)的支持,为信号处理、量子计算等领域的应用铺平了道路。同时,log函数现在也支持复数输入,完善了复数运算的生态。

分布式计算能力得到加强,新增了all_min和all_max集体操作,支持MPI和环形后端。这些操作在分布式训练中对于监控模型状态和实现特定算法非常有用。

注意力机制改进

融合注意力(fused attention)机制现在支持字面"causal"掩码,简化了自回归模型的实现。同时新增的加法掩码(additive mask)支持为注意力机制提供了更多灵活性。值得注意的是,团队还修复了融合注意力中的数值不稳定问题,提高了计算精度。

内存管理优化

内存API被移至顶层mlx.core命名空间,并支持CPU专用分配器。这一变化使得内存管理更加直观,同时为特定场景下的内存优化提供了可能。团队还改进了驻留集(residency set)的使用策略,优化了内存访问模式。

神经网络层增强

新版本引入了分片层(sharded layers)支持,这是实现模型/张量并行的关键组件。分片层允许将大型神经网络层分布在多个设备上,突破了单设备内存限制,使得在消费级设备上训练超大规模模型成为可能。

重要问题修复

本次更新修复了多个关键问题,包括:

  • 多流使用时可能出现的分配器死锁问题
  • 环形后端在32位平台和FreeBSD上的兼容性问题
  • FFT运算中的若干错误
  • 融合注意力掩码类型问题
  • float16矩阵乘法的回退机制
  • SIMD无符号64位整数处理问题

这些修复提高了框架的稳定性和跨平台兼容性,为用户提供了更可靠的计算环境。

总结

MLX v0.25.0版本通过深度优化关键运算、扩展功能集和完善问题修复,进一步巩固了其作为苹果生态中高效机器学习框架的地位。特别是对深度可分离卷积和MoE模型的优化,显示出框架对现代神经网络架构的针对性支持。复数运算和分布式计算的增强,则为更广泛的研究和应用场景打开了大门。这些改进共同使得MLX在保持易用性的同时,能够更好地满足专业开发者和研究者的需求。

登录后查看全文
热门项目推荐
相关项目推荐

热门内容推荐

最新内容推荐

项目优选

收起
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
176
261
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
860
511
ShopXO开源商城ShopXO开源商城
🔥🔥🔥ShopXO企业级免费开源商城系统,可视化DIY拖拽装修、包含PC、H5、多端小程序(微信+支付宝+百度+头条&抖音+QQ+快手)、APP、多仓库、多商户、多门店、IM客服、进销存,遵循MIT开源协议发布、基于ThinkPHP8框架研发
JavaScript
93
15
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
129
182
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
259
300
kernelkernel
deepin linux kernel
C
22
5
cherry-studiocherry-studio
🍒 Cherry Studio 是一款支持多个 LLM 提供商的桌面客户端
TypeScript
595
57
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.07 K
0
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
398
371
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
332
1.08 K