首页 > 其他分享 >MegEngine 正式支持 XLA 啦!

MegEngine 正式支持 XLA 啦!

时间:2023-12-13 11:15:16浏览次数:23  
标签:正式 训练 trace 静态 模型 XLA MegEngine

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%。
1.png

关于 xla 的更多信息及具体的使用方法可以参考 https://www.megengine.org.cn/doc/stable/zh/user-guide/model-development/jit/xla.html

更多 MegEngine 信息获取,您可以:查看文档、和 GitHub 项目,或加入 MegEngine 用户交流 QQ 群:1029741705。欢迎参与 MegEngine 社区贡献,成为 Awesome MegEngineer,荣誉证书、定制礼品享不停。

标签:正式,训练,trace,静态,模型,XLA,MegEngine
From: https://www.cnblogs.com/megengine/p/17898620.html

相关文章

  • 业务协同零边界|省级数字政府正式上线!
     近日,由魅视科技深度参与建设的某省数字政府运营指挥中心正式上线运营!该省数字政府以“146N”架构,推动技术融合、业务融合、数据融合,破除跨层级跨地域、跨系统、跨部门、跨业务堵点和壁垒,打造企业和群众办事环节最简、材料最少、时限最短、费用最小、便利度最优、满意度最高的......
  • macOS Monterey 12.7.2 (21G1974) 正式版发布,ISO、IPSW、PKG 下载
    macOSMonterey12.7.2(21G1974)正式版发布,ISO、IPSW、PKG下载本站下载的macOS软件包,既可以拖拽到Applications(应用程序)下直接安装,也可以制作启动U盘安装,或者在虚拟机中启动安装。另外也支持在Windows和Linux中创建可引导介质。macOSMonterey12.7.x如无特殊说明,......
  • macOS Ventura 13.6.3 (22G436) 正式版发布,ISO、IPSW、PKG 下载
    macOSVentura13.6.3(22G436)正式版发布,ISO、IPSW、PKG下载macOSVentura13.6及更新版本,如无特殊说明皆为安全更新,不再赘述。请访问原文链接:https://sysin.org/blog/macOS-Ventura/,查看最新版。原创作品,转载请保留出处。台前调度等新功能帮助Mac用户保持专注、提高生......
  • macOS Sonoma 14.2 (23C64) 正式版发布,ISO、IPSW、PKG 下载
    macOSSonoma14.2(23C64)正式版发布,ISO、IPSW、PKG下载本站下载的macOS软件包,既可以拖拽到Applications(应用程序)下直接安装,也可以制作启动U盘安装,或者在虚拟机中启动安装。另外也支持在Windows和Linux中创建可引导介质。请访问原文链接:https://sysin.org/blog/macO......
  • Nacos 2.3.0 正式发布,堪称最强!
    大家好,我是栈长。Nacos2.3.0前几天正式发布了,新增了不少实用性的新功能,真是史上最强版本。Nacos2.3.0还真是一个比较重要的大版本,因为它涉及了太多重大更新,今天栈长给大家来解读下。Nacos先扫个盲:Nacos一个用于构建云原生应用的动态服务发现、配置管理和服务管理平台,......
  • 苹果iOS 17.2 RC准正式版发布!iPhone 15 Pro系列独占空间视频来了
    今天凌晨,苹果面向开发者和公测用户发布iOS17.2RC版本,内部版本号为21C62。iOS17.2RC也就是iOS17.2准正式版,如果没有大的Bug,这将是iOS17.2正式版发布前最后一次更新。升级日志显示,iOS17.2RC新增iPhone15Pro系列空间视频拍摄功能、iPhone15Pro系列操作按钮新增“翻译......
  • electron老框架打正式包
    一、将callset_env.bat添加到build.bat和package.bat文件中二、修改set_env.bat文件内的地址WORKSPACE为项目代码地址NODEJS_HOME为nodejs地址,查找方式(cmd中输入wherenode)YARN_HOME为yarn地址,如果没有需安装(命令为npmiyarn-g),查找安装地址同nodeJs一样,安装后在电脑......
  • iPhone 13/14可升级iOS 17.2 RC准正式版:新增Qi2无线充电
    今天凌晨,苹果面向开发者和公测用户发布了iOS17.2RC准正式版更新,为iPhone13和iPhone14用户解锁了一项重要的新功能:支持Qi2无线充电。iOS17.2RC准正式版升级更新基本上与正式版没有区别,预计iOS17.2正式版下周就会推送升级更新了。本次更新在修复了多个问题的同时,也新增了多......
  • Amazon Code Whisperer 的正式使用,全新 AI 代码工具等你发现!(内附详细安装步骤图解)
    文章作者:稚始稚终关于CodeWhispererCodeWhisperer,亚马逊推出的实时AI编程助手,是一项基于机器学习的服务,它可以分析开发者在集成开发环境(IDE)中的注释和代码,并根据其内容生成多种代码建议。开发者可以用自然语言(目前仅支持英语)描述他们想要实现的功能,例如“上传一个带有服务......
  • StoneDB-8.0-V2.2.0 企业版正式发布!性能优化,稳定性提升,持续公测中!
    11月,StoneDB新版本如期而至,这一个月来我们的研发同学加班加点,持续迭代:在2.2.0版本中,我们针对用户提出的需求和做出了重量级更新,修复了一些已知和用户反馈的Bug,同时对部分代码进行了重构,新版本还特别针对备库insert的性能进行了大幅提升。欢迎大家下载试用,遇到任何问题都可以......