AI开发平台MODELARTS-性能调优五板斧:算子二进制调优
时间:2024-06-07 18:38:05
算子二进制调优
PyTorch Adaptor框架提供与算子编译相关的二进制配置参数,可设置模型编译时是否优先在线编译,以此优化模型训练性能。在main函数训练逻辑开始前通过以下函数设置(True为启动优先在线编译、False为取消优先在线编译)。
torch_npu.npu.set_compile_mode(jit_compile=False)
对于固定shape场景和动态shape场景,是否优先在线编译对训练性能带来不同的效果:
- 固定shape场景:固定shape是指在模型计算过程中,模型的输入和输出的shape是固定的。如果优先在线编译,可根据当前获得的算子信息,进行融合和优化,在线编译出运行性能更优的算子。反之,则编译优化少,性能降低。
- 动态shape场景:动态shape是指在模型计算过程中,模型的输入和输出存在多种shape。如果对动态shape的算子优先编译,会导致编译时间长训练性能差。如果取消优先编译,会优先查找当前编译好的算子二进制配置文件,如果存在则不在线编译算子;如果不存在,再进行在线编译。此时虽然编译优化少,但是没有编译时间,模型训练性能大概率比配置为优先编译高。
总结:
- 如果模型中无动态shape,启动优先在线编译,可提高训练性能。
- 如果模型中只有动态shape(该情况较少),关闭优先在线编译,模型训练性能大概率会更高。
- 既有动态shape也有固定shape,启动优先在线编译对训练性能是否提升无法确定,因此可以在调整训练代码后,分别尝试开关优先在线编译后根据训练性能的优劣再设置。
- Snt9B芯片默认关闭了优先在线编译,可通过以下命令获取当前模式。如果返回为False,代表已启动优先在线编译。
print(torch_npu.npu.is_jit_compile_false())
- 算子会根据该开关走不同的代码逻辑,如出现jit_compile切换后,代码运行失败的情况,需要联系昇腾技术支持获取帮助。
- Snt9B芯片默认关闭了优先在线编译,可通过以下命令获取当前模式。如果返回为False,代表已启动优先在线编译。
support.huaweicloud.com/bestpractice-modelarts/modelarts_10_2507.html
看了此文的人还看了
CDN加速
GaussDB
文字转换成语音
免费的服务器
如何创建网站
域名网站购买
私有云桌面
云主机哪个好
域名怎么备案
手机云电脑
SSL证书申请
云点播服务器
免费OCR是什么
电脑云桌面
域名备案怎么弄
语音转文字
文字图片识别
云桌面是什么
网址安全检测
网站建设搭建
国外CDN加速
SSL免费证书申请
短信批量发送
图片OCR识别
云数据库MySQL
个人域名购买
录音转文字
扫描图片识别文字
OCR图片识别
行驶证识别
虚拟电话号码
电话呼叫中心软件
怎么制作一个网站
Email注册网站
华为VNC
图像文字识别
企业网站制作
个人网站搭建
华为云计算
免费租用云托管
云桌面云服务器
ocr文字识别免费版
HTTPS证书申请
图片文字识别转换
国外域名注册商
使用免费虚拟主机
云电脑主机多少钱
鲲鹏云手机
短信验证码平台
OCR图片文字识别
SSL证书是什么
申请企业邮箱步骤
免费的企业用邮箱
云免流搭建教程
域名价格
推荐文章
- 文档数据库服务DDS性能调优_MongoDB性能调优_华为云
- GaussDB性能怎么调_GaussDB性能调优_高斯数据库性能怎么调-华为云
- GaussDB性能怎么调_华为gaussdb_gaussdb性能_gaussdb学习
- GaussDB性能_Gaussdb数据库性能_高斯数据库性能-华为云
- GaussDB数据库参数调优_GaussDB版本_高斯数据库参数调优
- GaussDB性能_性能统计_高斯数据库性能-华为云
- GaussDB硬件_金融级高可用_高斯数据库硬件-华为云
- GaussDB案例指南_高斯数据库函数_高斯数据库案例指南_华为云
- 云数据库mysql_云上数据库_SQL云数据库_SQLserver
- GaussDB计算性能_gaussdb递归_高斯数据库计算性能_华为云