网站大量收购独家精品文档,联系QQ:2885784924

2025大模型训练性能瓶颈定位流程案例.docx

2025大模型训练性能瓶颈定位流程案例.docx

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

MindStudio7.0.0

大模型训练性能瓶颈定位流程案例

大模型训练性能瓶颈定位流程案例 目录

目录

常见性能问题场景 1

问题定位方法 2

性能问题定位流程 2

AscendPyTorchProfiler采集性能数据 3

MindstudioInsight定位 4

性能调优案例 9

案例描述 9

MindStudioInsight分析定位 9

msttadvisor辅助定位 11

大模型训练性能瓶颈定位流程案例 1常见性能问题场景

1常见性能问题场景

大模型从外部设备迁移到昇腾设备,并在昇腾设备上训练的过程中,可能会出现性能问题。常见的两大性能问题场景是开箱性能优化场景和性能长跑劣化场景。

开箱性能优化:主要是用户在昇腾平台使用模型时,发现性能差,直接进行性能层面的优化。

性能长跑劣化:一般是用户在训练过程中,由于不可预知的引入,导致模型出现了一些性能劣化的问题,需要定位性能劣化的原因,并解决问题。

图1-1场景介绍

2问题定位方法

性能问题定位流程

AscendPyTorchProfiler采集性能数据MindstudioInsight定位

性能问题定位流程

大模型训练的基本性能调优流程如下:图2-1基本性能调优流

性能调优最重要的就是对症下药,先定界问题,再对问题进行针对性优化。

首先进行性能数据采集,可以使用AscendPyTorchProfiler提供的接口进行数据采集和解析;

接下来,使用MindStudioInsight可视化工具定界性能问题,定界结果通常分为计算、调度、通信三个方向的问题;

除此之外,用户还可以直接使用mstt中的Advisor工具辅助定位问题,Advisor工具通过内置的案例集,自动对性能数据进行分析,并输出性能调优建议;

最后,用户可以针对不同问题使用对应的调优手段进行调优,每次调优后重跑训练,采集性能数据,使用MindStudioInsight可视化工具查看调优手段是否产生效果。重复这个过程,直到解决性能问题。

AscendPyTorchProfiler采集性能数据

AscendPyTorchProfiler是大模型在AscendPyTorch框架下训练过程中提供的一套采集性能数据的API接口,能够采集到框架侧、CANN侧和device侧的原始性能数据,并完成解析。在训练脚本(如train_*.py文件)内插入torch_npu.profiler相关采集、解析的配置和参数,再启动训练,即可采集性能数据。

importtorchimporttorch_npu#Profiler采集、解析的前置配置参数experimental_config=torch_npu.profiler._ExperimentalConfig(export_type=torch_npu.profiler.ExportType.Text,profiler_level=torch_npu.profiler.ProfilerLevel.Level0,msprof_tx=False,aic_metrics=torch_npu.profiler.AiCMetrics.AiCoreNone,l2_cache=False,op_attr=False,data_simplification=False,record_op_args=False,gc_detect_threshold=None)#

importtorchimporttorch_npu

#Profiler采集、解析的前置配置参数

experimental_config=torch_npu.profiler._ExperimentalConfig(

export_type=torch_npu.profiler.ExportType.Text,profiler_level=torch_npu.profiler.ProfilerLevel.Level0,msprof_tx=False,aic_metrics=torch_npu.profiler.AiCMetrics.AiCoreNone,l2_cache=False,

op_attr=False,data_simplification=False,record_op_args=False,gc_detect_threshold=None

)

#大模型训练的次数

steps=7

withtorch_npu.profiler.profile(activities=[

torch_npu.profiler.ProfilerActivity.CPU,torch_n

文档评论(0)

535600147 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6010104234000003

1亿VIP精品文档

相关文档