MegEngine 正式支持 XLA 啦!
XLA(Accelerated Linear Algebra)是 Google 提出的一个神经网络编译器,可以用于加速 AI 模型的训练和推理。MegEngine 1.13.1 中也已经支持了 XLA,在训练模型时可以选择开启此项功能,不同的模型可以获得 10%~80% 不等的速度提升。
主要的目标场景
MegEngine 现在是动态执行的,即 python 中每一个 mge.functional 的调用都对应着底层 gpu 上的一次 kernel 执行。这种模式的好处在于实际的执行方式与代码逻辑一致,所见即所得,非常的灵活;不过其问题是难以优化,性能可能不是最优。
而 XLA 采取静态执行的方式,会将模型计算过程表达成一张静态计算图,称为 “HLO” (High-Level Optimized)。HLO 中包含计算图的相关操作,张量的数据流程和形状等信息。XLA 随后会对 HLO 进行一系列的优化,并最终生成一个更优的计算图,从而更快的完成计算。而 XLA 的局限性就在于不够灵活,对于 Tensor Shape 改变或者控制流等信息无法很好的表达。
现在 MegEngine 中已经支持了 XLA,模型训练中一些比较静态的场景,我们可以使用 XLA 来进行加速,从而缩短整个训练过程的时间。
使用方法与效果
在使用 MegEngine 进行训练时,可以通过对原来的训练函数增加 xla_trace/partial_trace 装饰器来启用 XLA 编译优化。
当整个模型是完全静态时,我们可以使用 xla_trace 将整张网络表达成一张静态图,然后交由 XLA 做后续的优化编译,后续的执行过程将执行这张优化后的计算图提升速度。
而如果我们模型中有一些动态性,比如训练过程中一些 Tensor Shape 会发生变化,亦或者是存在控制流,我们可以使用 partial_trace,将网络中静态的部分 trace 成一些子图并分别交给 XLA 进行编译优化,而网络中其他部分仍然保持动态执行,同时保证性能与灵活性。
下面展示了在 MegEngine 中,XLA 功能开启前后,主流的神经网络模型性能变化。其中蓝色为 XLA 开启之前的训练速度,橙色为 XLA 开启之后的训练速度。在开启 XLA 后,大部分模型的性能可以获得 10%~40% 的提升,最多可以超过 80%。
关于 XLA 的更多信息及具体的使用方法可以参考 https://www.megengine.org.cn/doc/stable/zh/user-guide/model-development/jit/xla.html。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
麟卓发布多平台软件安装包构建系统,支持 Windows 和 Linux
北京麟卓宣布推出“多平台软件安装包构建系统”,用于解决Windows和Linux系统中传统软件封装、安装过程繁琐、平台差异严重等诸多问题。 据介绍,该工具提供“一站式构建、安装”功能,让用户能够轻松制作软件安装包程序,提升工作效率,简化软件封装、安装以及卸载流程。 下载地址:https://www.linzhuotech.com/Product/DownLoadWindows “多平台软件安装包构建系统”是利用统一交互界面和配置机制生成多平台软件安装包的系统,支持在Windows、Linux平台上进行目标软件的多层级模块化封装以及安装功能,主要具备以下优势: 软件安装便捷:简化传统软件安装流程中的解压、拷贝以及配置环境等繁琐操作。 人机交互统一:在不同的操作系统平台上,具备统一人机交互,方便用户进行多平台封装。 功能操作简单:具备多层级可选控制、安装信息配置、自定义安装脚本、环境配置等丰富功能的同时保证软件操作简洁,易学易用。
- 下一篇
Soul 上线自研语言大模型 SoulX
社交平台 Soul 正式上线自研语言大模型SoulX。作为生成式人工智能最基础、最核心的工具,SoulX将作为Soul “AIGC+社交”布局的重要基建,垂直应用于平台上多元社交互动场景,例如智能对话机器人“AI苟蛋”、AI辅助聊天、虚拟陪伴等诸多工具和创新功能,进一步丰富平台用户的社交体验。 根据介绍,该模型基于海量数据训练,具备prompt驱动、条件可控生成、上下文理解、多模态理解等能力。在保证对话流畅、自然、具备情感温度的同时,SoulX覆盖百种细粒度风险类别,通过训练数据安全筛选、安全SFT数据构造、RLHF安全对齐、推理拦截等策略来构建安全体系,保证了大模型的内容生产质量和安全性。
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Mario游戏-低调大师作品
- CentOS8安装Docker,最新的服务器搭配容器使用
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS8编译安装MySQL8.0.19
- SpringBoot2配置默认Tomcat设置,开启更多高级功能