2025 GOPS 全球运维大会暨研运数智化技术峰会·上海站:基于 SysOM 的 GPU 火焰图和慢节点检测_第1页
2025 GOPS 全球运维大会暨研运数智化技术峰会·上海站:基于 SysOM 的 GPU 火焰图和慢节点检测_第2页
2025 GOPS 全球运维大会暨研运数智化技术峰会·上海站:基于 SysOM 的 GPU 火焰图和慢节点检测_第3页
2025 GOPS 全球运维大会暨研运数智化技术峰会·上海站:基于 SysOM 的 GPU 火焰图和慢节点检测_第4页
2025 GOPS 全球运维大会暨研运数智化技术峰会·上海站:基于 SysOM 的 GPU 火焰图和慢节点检测_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

GOPS2025Shanghai2015-20252025年10月17日-18日C开放运维联盟主办单位:BizDevOps承办单位:H华估科技ANNIVERSARY2015-2025GOPSANNIVERSARY2015-2025Shanghai姓名:毛文安◎时间:2025/10/17姓名毛文安|公司职位阿里巴巴高级技术专家GOPS2025Shanghai2015-2025GOPS全球运维大会暨研运数智化技术峰会2025·上海站GOPS2025ShanghaiANNIVERSARY2015-2025GOPS2025ShanghaiANNIVERSARY2015-2025Al系统性能瓶颈分析AI火焰图目录案例:慢节点检测未来展望GOPS全球运维大会暨研运数智化技术峰会2025·上海站GOPS全球运维大会暨研运数智化技术峰会2025·上海站GOPS2025ShanghaiANNIVERSARY2015-2025Shanghai2015-2025Al系统性能瓶颈分析此处添加详细文本描述,建议与标题相关并符合整体语言风格此处添加详细文本此处添加详细文本描述训推任务三类典型问题场景慢节点现象慢节点现象●现象:单节点拖慢全局迭代在分布式训练或推理集群中,个别计算节点的CPU运算速度、网络通信带宽或主机整体负载显著落后于集群平均水平,进而拖慢全局迭代进度,造成端到端训练时间成倍增加。●影响:训练耗时变长,算力浪费GPU计算单元长时间处于空转状态,其根本原因在于数据加载、梯度通信与前向/反向计算三者之间未能形成高效流水线,导致算力资源大量闲置,训练或推理效率随之大幅下降。●影响:训练/推理效率低2015-2025GOPS20252015-2025●现象:推理/训练性能数据不一致在硬件配置、软件版本、超参数设置完全一致的前提下,同一训练或推理任务在不同物理节点上仍会出现明显的性能波动。由于缺乏标准化、可量化的对比工具,难以解释差异产生的根因,也难以给出优化建议。●影响:问题定位周期长,客户流失优势指标宏观概览、历史趋势、告警、轻量级缺乏细节、难定位根因、多个指标关联分析复杂信息丰富、问题定位性能问题往往没有日志输出Continuous-profiling代码级瓶颈定位、历史回溯缺乏GPU信息Nsight-systemGPU深度分析、CPU-GPU协同分析性能影响大、数据量大GOPS2025Shanghai2015-2025GOPS全球运维大会暨研运数智化技术峰会2025·上海站智能运维平台智能运维平台SysOMSysOM:一站式智能运维平台,中心端采用微服务的方式处理来自多个region的Profiling和监控数据;SysAK:系统工具集,处理来自中心端的请求和数据预处理,进行诊断结果汇总和Profiling、监控数据上传;Coolbpf:eBPF开发框架和功能库,提供持续剖析数据采样,网络、IO、内存、调度及GPU指标等功能。主机管理主机管理主机管理可观测中心监控中心诊断中心系统监控系统诊断系统监控系统诊断NginxMySQLCPU/GPUProfiling GPUkernel的全栈分析)集群健康度节点健康度节点监控容器监控网络监控GPU监控网络诊断内存诊断存储诊断调度诊断一键诊断智能助手GPU告警GPU诊断2015-2025GOPS20252015-2025告警中心调用栈分析宕机根因分析宕机栈匹配SysOM节点端SVSAKSysOM节点端SVSAK(receiver及exporter)Coolbpf(eBPF功能库)GOPS全球运维大会暨研运数智化技术峰会2025·上海站SysOMAl可观测使用完全无侵入式方式,对Al模型训推场景中资源、调用栈等进行细粒度采集,帮助开发者快速定界异常或性能并颈,提升系统整体性能AI诊断通过对算子延迟、硬件xid等信息检测,判断GPU等算常情况运维为AI训推场景提供故障及性能定位AI集群拓扑提供对GPU资源的整体视图;对集群GPU拓扑分布展示;对GPU夯、推理链路延迟高的节点进行异常提示。通过对CPU栈和GPU算子等信息进行特征提取,常态化实现慢卡、故障定界的分析。分钟级问题无侵入式AI加速运维进入运维场景新纪元CPU和GPU协同融合分析AI进行工单的全流程管理AI技术推动系统运维效率提升模型提升自服务率GOPS2025Shanghai使用Al对工单进行初步分类、分析和值班人员关联,使用OS专用大模型继续答疑,诊断智能体通过MCP调用相关诊断工具解决问题融合AI能力到运维竞争力产品中,如诊断智能体和智能宕机分析工具在运维产品维护过程中,使用AI辅助告警分类推送和版本自动升级;通过运维处理流程自动沉淀知识库,以MCP、智能机器人等方式输出到一线服务团队,提升问题解决效率2015-2025GOPS全球运维大会暨研运数智化技术峰会2025·上海站GOPS全球运维大会暨研运数智化技术峰会2025·上海站GOPS2025ShanghaiAI火焰图此处添加详细文本描述,建议与标题相关并符合整体语言风格此处添加详细文本此处添加详细文本描述2015-2025CPU火焰图框图宽度代表每个函数的CPU占用时长total(100%,0.02seconds)host(100%,0.02seconds)containerd-shim:2830(100%,0.02seconds)runtime.call64(100%,0.02seconds)vendor//x/net/idna.validateAndMap(100%,0.02seconds)math/big.basicSqr(50%,0.01seconds)math/big.karatsuba(50%,0.01seconds)fmt.(*pp).doPrintf(50%,0.01seconds)runtime.call67108864(50%,0.01seconds)fmt.(*pp).doPrintf(50%,0.01seconds)asm_exc_page_fault(50%,0.01seconds)fmt.(*readRune).ReadRune(50%,0.01seconds)exc_page_fault(50%,0.01seconds)fmt.(*pp).doPrint(50%,0.01seconds)do_user_addr_fault(50%,0.01seconds)syscall.(*Errno).Error(50%,0.01seconds)handle_mm_fault(50%,0.01seconds)time.Time.AppendFormat(50%,0.01seconds)handle_mm_fault(50%,0.01seconds)runtime.(*cpuProfile).add(50%,0.01seconds)do_anonymous_page(50%,0.01seconds)entry_SYSCALL_64_after_huframe(50%,0.01seconds)page_add_new_anon_rmap(50%,0.01seconds)do_syscall_64(50%,0.01seconds)_mod_memcg_lruvec_state(50%,0.01seconds)_×64_sys_openat(50%,0.01seconds)_mod_memcg_state.part.0(50%,0.01seconds)do_sys_openat2(50%,0.01seconds)do_filp_open(50%,0.01seconds)path_openat(50%,0.01seconds)link_path_walk.part.0(50%,0.01seconds)inode_permission.part.0(50%,0.01seconds)kernfs_iop_permission(50%,0.01seconds)中09019008立0.74%立6GOPS全球运维大会暨研运数智化技术峰会2025·上海站Shanghai2015-2025AI火焰图、热力图架构Shanghai2015-2025补齐Al场景下Continuous-profiling技术底座缺乏的GPU信息慢节点检测gpu利用率低性能差异热力图宏观视角发现热点信息信息火焰图微观代码路径追踪cpu火焰gpu火焰性能差异精准捕捉分cpu侧分eBPFbpftime安全性内核态跟踪用户态跟踪高性能调用栈展开动态库注入GOPS2025ShanghaiGOPS2025Shanghai2015-2025●带“GPU●带“GPU:”前缀的条目表示GPU核函数●方格宽度代表GPU核函数执行时间GPU:at::native:..进程GPU函数调用关系热点图田一total(100%,0.91seconds)python:2427472(100%,0.91seconds)_start(81.05%,0.74seconds)_clone(18.95%,0._Libc_start_main(81.05%,0.74seconds)start_thread(18.95%Py_BytesMain(81.05%,0.74seconds)execute_native_threaPy_RunMain(81.05%,0.74seconds)torch::autogradi::pyt_PyRun_AnyFileObject(81.05%,0.74seconds)torch::autograd::Eng_PyRun_SimpleFileObject(81.05%,0.74seconds)torch::autograd:Engpyrun_file(81.05%,0.74seconds)torch::autograd::Engrun_mod(81.05%,0.74seconds)torchrun_evaL_code_obj(81.05%,0.74seconds)PyEval_EvalCode(81.05%,0.74seconds)torch_PyEval_EvaLFrameDefault(81.05%,0.74seconds)at::_<interpretertrampoline>(81.05%,0.74seconds)torc<module>(81.05%,0.74seconds)at::at::_Ops:c10::enum_next(14._Pyobject_MakeTp'timeit(4.7%,0.41seconds)c10torchslot_tp_iternexslot_tp_call(15Timer.timeit(44.7%,0.41seconds)at:at::_vectorcall_metr_PyObject_Call_Pinner(44.7%,0.41seconds)at::nc10:_PyEval_EvalFra_Pyobject_FastCaOfile_hook_step.clocals>.urapper(4<interpretertr_PyEval_EvalFrame_use_grad_for_differentiable.<locals>._use_gradat::n_BaseDataLoaderAdam.step(44.7%,0.41seconds)torch:GPU:at::nModule.wrapped__disable_dynamo_if_unsupported.<locals>,wrapper.at::_at::n.MapDatasetFetcmethod_vectorcaladam(44.7%,0.41seconds)cudaLGOPS全球运维大会暨研运数智化技术峰会2025·上海站GOPS2025Shanghai2015-2025GOPS2025Shanghai2015-2025●每一列表示1秒钟的时间●每列由50个小方格组成,每个放个代表20ms的时间区间●方格颜色深浅表示归一化后的采样事件数量●颜色越深,表示该时间段热点越高●适用于GPU利用率低、慢节点场景GOPS全球运维大会暨研运数智化技术峰会2025·上海站GOPS2025Shanghai2015-2025●差分分析用于对比正常和异常时段的热点变化GOPS2025Shanghai2015-2025●差分分析用于对比正常和异常时段的热点变化●红色标注表示进程2相比进程1采样次数增多,绿色表示减少●颜色越深,差异越大Lstart_thread(78.71seconds)Diffutex_wait_queLraMLS_schefnish._sy5softLderGOPS全球运维大会暨研运数智化技术峰会2025·上海站全栈(同时包含用户态和内核态):热点分析OnCpu热点用户态符号解析原生代码:符号表高级语言:运行时符号Shanghai2015-2025Copliot智能分析Copliot智能分析SLS锁热点OffCpu热点内存热点锁热点eBPF内核态推栈内核栈&用户态栈内核栈&用户态栈C/C++/Rust/GoLang高级语言:Java/Pyhhon/Luajit全栈火焰图实例差分分析栈知识库性能优化进程可执行文件Mapping等信息完整栈数据上传查找符号表进行符功能呈现1、用户态根据配置的进程Pid,全栈火焰图实例差分分析栈知识库性能优化进程可执行文件Mapping等信息完整栈数据上传查找符号表进行符功能呈现创建栈回溯表用户态内核态Native语言不带FP高级语言调用C库内核2、内核态程序由eBPFperfevent采样事件触发。内核代码直接获取调用链;对于不带创建栈回溯表用户态内核态Native语言不带FP高级语言调用C库内核查找Map,CFA映射表查找Map,CFA映射表进行栈回溯直接获取调用链eBPFPerf事件上传调用链和采样信息4、在用户态进行符号表查找,推出完整的函数调用栈信息;5、数据上传到中心端进行加工处理,进行火焰图呈现,实例热点信息对比分析,已知知识库匹配,性能优化功能。GOPS全球运维大会暨研运数智化技术峰会2025·上海站GOPS全球运维大会暨研运数智化技术峰会2025·上海站带FP的推栈方法优缺点在栈回溯时,根据RBP指针,可以轻松获取旧的堆栈指针,及返回地址。并继续展开其他栈帧。这种方式的优缺点如下:优点:使用起来方便快捷,回溯栈比较简单;缺点:1)需要固定占用一个通用寄存器2)保存回溯信息有指令开销(保存RBP寄存3)最主要的是没有足够的信息被编码,只能恢复堆栈寄存器Shanghai2015-2025RBP+24hRBP+169RBP+8RBP-8XXRBP-16yyRBP-24ZZredzone"401181:401182:401185:40118a:40118f:401194:401199:40119a:40119b:4889e5bf04204000e8a1feffffb800000000e89dffffffc3不带FP的推栈方法GOPS2025Shanghai2015-2025shnamesh_typedescriptiontextSHTPROGBTS令dataSHT_PROGBITS在程序的内存映像中bssSHTLNOBITS所以rodataSHT_PROGBITS包含只读数据commentSHT_PROGBITS包含版本控制信息ahLframeSHT_PROGBITS表debugSHT_PROGBITS息dynsymSHTDYNSYMshstrtabSHTSTRTAB存放section名,字符串表。SectionHeaderStringTablesttabSHT_STRTAB字符串表symtabSHT_SYMTAB符号表90tSHTPROGBITS全局偏移表pltSHT_PROGBITS过程链接表renameSHT_REL包含了重定位信息,例如text节区的重定位节区名字将是:rel.txt1、.eh_frame节中的信息是基于DWARF调试格式的,它包括了调用帧信息CFI,它记录了函数的栈帧布局,包括栈的大小、寄存器的保存位置等。使用这些信息来逐层遍历栈帧,可以进行堆栈回溯;通过CFI指令生成CFA等对应的栈信息计算方法。moVmoVcallqmoVcallq%rbp%rsp,%rbp401030<puts@plt>%rbp√请输入标题C默认字体默认主题∨…12371234567000000840000001c0008088FDEcie=00000000pc=00401181.…0040119cFormat:DWARF32DW_CFA_advance_loc:1DW_CFA_def_cfa_offset:+16DW_CFA_offset:RBP-16DW_CFA_advance_loc:3DW_CFA_def_cfa_register:RBPDW_CFA_advance_loc:22DW_CFA_def_cfa:RSP+8DW_CFA_nop:DW_CFA_nop:DW_CFA_nop:0x401181:CFA=RSP+8:RIP=[CFA-8]0x401182:CFA=RSP+16:RBP=[CFA-16],RIP=[CFA-8]0×401185:CFA=RBP+16:RBP=[CFA-16],RIP=[CFA-8]0×40119b:CFA=RSP+8:RBP=[CFA-16],RIP=[CFA-8]推栈方法:目,根据条目提供的各种偏移计算其他信息。2、首先根据CFA=RSP+16,把得到的CFA值计算出通用寄存器和返回地址在堆栈中的位置。3、通用寄存器栈位置计算。例如:RBP=4、返回地址ra的栈位置计算。RIP=[CFA-8]。5、根据RIP的值,重复步骤1到4,就形成了完整的栈回溯。GOPS全球运维大会暨研运数智化技术峰会2025·上海站GOPS全球运维大会暨研运数智化技术峰会2025·上海站GOPS2025ShanghaiANNIVERSARY2015-2025Shanghai2015-2025节点检测此处添加详细文本描述,建议与标题相关并符合整体语言风格此处添加详细文本此处添加详细文本描述GOPS全球运维大会暨研运数智化技术峰会2025·上海站慢节点分析计算慢:由于节点自身计算性能下降或负载异常,导致其算子执行时间显著延长,无法及时完成本地计算并进入NCCL通信同步阶段,从而拖慢全局训练进度。分析方法:通过AI火焰图采集上来的算子信息能够分析出哪个节点最晚进入通信阶段,可判定为慢节点。通信慢:因节点自身通信性能受限或负载异常,致使其在NCCL通信同步阶段耗时显著增加,导致全局通信延迟,进而拖慢整体训练进度。分析方法:受节点间数据传输存在延迟的影响,可通过采集进程级细粒度RDMA指标,识别最早出现性能波动的节点,从而定位慢节点。主机慢:因主机端(CPU)性能瓶颈或异常,导致计算与通信算子无法及时下发至GPU,从而拖慢整体训练进度。分析方法:采集各节点算子下发至GPU的时间戳,依据其差异识别慢节点。慢节点分析通信慢Shanghai2015-2025算子分析GPU火焰图CPU火焰图GOPS全球运维大会暨研运数智化技术峰会2025·上海站慢节点检测流程通信组内通信耗时最短的rank为慢节点Shanghai2015-2025●为什么通信耗时最短为慢节点?(进入通信状态最晚)黄色区间是RANKY等待RANKX进入NCCL通信的等待时间RANKXRANKX计算慢影响后续的NCCL同步通信计算计算通信0250300350400450500550600650700750成文亲在这里输单述与关键词标题体内容,若字数太多

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论