资讯详情

CANN/GE DUMP图级别配置指南

📅 2026/9/10 20:51:49 | 华诺云谱 👁 阅读
CANN/GE DUMP图级别配置指南
DUMP_GRAPH_LEVEL【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge功能描述把整个图编译流程中各个阶段的图描述信息打印到文件中。此环境变量支持如下两种配置方式两种方式均是控制图落盘的个数用户可以按需使用注意两种配置方式不支持混合使用配置数值取值如下1dump所有阶段的图。2dump白名单阶段的图。具体白名单图请参见表1中的“是否白名单”列。3dump最后的生成图即经过GEGraph Engine图引擎优化、编译后的图。4dump最早的生成图即经过GE解析映射算子后给到软件栈的编译入口图此时图结构尚未经过GE的编译优化。配置按照“|”分隔的字符串配置如下例如配置为aa|bb则表示dump出名称包含aa和bb的图aa和bb需要指定为图编译流程中的合法字符串合法字符串的获取可以从全量的dump图得到。DUMP_GRAPH_LEVEL环境变量只有在DUMP_GE_GRAPH开启时才生效默认值为2。配置示例配置为数值export DUMP_GRAPH_LEVEL1配置为按照|分隔的字符串export DUMP_GRAPH_LEVELPreRunBegin|AfterInfershape使用约束如果此环境变量设置了其他非法值可能会导致未定义的行为发生。如果开启了采集算子dump数据功能可以参考《图开发》“接口参考 C语言接口 图基础数据结构和接口 options参数说明 ge.exec.enableDump”参数即使不配置DUMP_GRAPH_LEVEL环境变量或者配置export DUMP_GRAPH_LEVELPreRunBegin|AfterInfershape但不包括“Build”字符串最终都会dump子图ge_proto_xxxx_Build.txt。此环境变量需要配合DUMP_GE_GRAPH使用即开启DUMP_GE_GRAPH的场景下可通过DUMP_GRAPH_LEVEL控制生成的dump图信息。全量dump图信息请参见表1。表 1dump图详细信息说明序号子图名称涉及组件所处阶段描述是否白名单1ge_proto_xxxx_GraphPreRunBegin.txtGEGraph编译前的图-2ge_proto_xxxx_AfterFlowGraphPartition.txtGEFlow切分后的图flow切分是应用于DataFlow中的切分方式-3ge_proto_xxxx_AfterParallelPartitioner.txtGEpipeline并行切分后的图这里的pipeline指后端推理场景的PP-4ge_proto_xxxx_PreRunBegin.txtGE原始图结构白名单5ge_proto_xxxx_RunCustomPassBeforeInfershape.txtGE在InferShape之前用户自定义Pass的出口图白名单6ge_proto_xxxx_PreRunAfterInitPreparation.txtFE经历了图准备阶段所有初始化处理之后的图结构-7ge_proto_xxxx_PreRunAfterHandleSummaryOp.txtGE对Summary节点做处理之后的图结构-8ge_proto_xxxx_PrepareAfterCheckAndUpdateInput.txtGE校验并更新图输入数据处理之后的图结构-9ge_proto_xxxx_PrepareAfterGraphEquivalentTransformation.txtGE将For循环图结构同等替换成While循环图结构处理之后的图结构-10ge_proto_xxxx_PrepareAfterProcessOutput.txtGE对图数据进行相关处理之后的图结构-11ge_proto_xxxx_PrepareAfterOptimizeAfterGraphNormalization.txtGE图标准化后图优化操作出口图-12ge_proto_xxxx_PrepareAfterInsertAipp.txtGE在配置了AIPP参数下对图进行AIPP相关处理之后的图结构-13ge_proto_xxxx_PrepareAfterProcessAippNodesDataFormat.txtGEAIPP节点格式刷新出口图-14ge_proto_xxxx_PreRunAfterNormalizeGraph.txtGE图标准化出口图白名单15ge_proto_xxxx_PreRunAfterOptimizeGraphInit.txtGE图优化初始化出口图-16ge_proto_xxxx_OptimizeGraph_TagNoConstFoldingAfter.txtFE量化场景使用FE会给算子打上不做常量折叠标签GE在执行常量折叠时会判断此标签如果存在则不执行常量折叠-17ge_proto_xxxx_HcclAfterOptimizeGraphPrepare.txtHCCLHCCL图准备阶段优化后的图-18ge_proto_xxxx_PreRunAfterOptimizeGraphPrepare.txtGE经过各算子信息库原图准备处理OptimizeGraphPrepare接口调用之后的图结构-19ge_proto_xxxx_PrepareAfterProcessBeforeInfershape.txtGE对条件算子进行死边消除处理之后的图结构-20ge_proto_xxxx_AfterFirstInferformat.txtGE经过全图inferformat处理之后的图结构-21ge_proto_xxxx_AfterInfershape.txtGE经过全图infershape处理之后的图结构会伴随常量折叠白名单22ge_proto_xxxx_PrepareAfterInferFormatAndShape.txtGE经历完所有InferFormat与InferShape处理之后的图结构与上图间经历了第二次全图InferFormat-23ge_proto_xxxx_RunCustomPass_AfterInferShape.txtGE在InferShape之后用户自定义Pass的出口图白名单24ge_proto_xxxx_AfterSecondInferformat.txtGE第二次格式推导之后的图-25ge_proto_xxxx_PrepareAfterCtrlFlowPreProcess.txtGE对条件算子做预处理之后的图结构-26ge_proto_xxxx_PrepareAfterGetDynamicOutputShape.txtGE动态档位下对图输出做处理之后的图结构-27ge_proto_xxxx_PrepareAfterProcessAippStage2.txtGE在AIPP模式下对图输入节点做相关处理之后的图结构-28ge_proto_xxxx_PrepareAfterPrepareOptimize.txtGE在图准备阶段做相关优化处理之后的图结构-29ge_proto_xxxx_PreRunAfterPrepare.txtGE目前和上张图相同经历过所有图准备处理之后的图结构白名单30ge_proto_xxxx_OptimizeQuantGraph_FeGraphFusionAfter.txtFE图优化阶段的量化流程结束后的图结构-31ge_proto_xxxx_OptimizeOriginalGraph_FeGraphFusionAfter.txtFE图融合流程结束后的图结构-32ge_proto_xxxx_OptimizeOriginalGraph_FeTopoSortingAfter.txtFE图融合后进行拓扑排序排查融合后是否成环的图结构-33ge_proto_xxxx_OptimizeOriginalGraph_DSAFeOpJudgeAfter.txtFE经过动态shape分析后的格式DataType和Format选择的图-34ge_proto_xxxx_HcclBeforeOptimizeOriginalGraph.txtHCCLHCCL原图优化之前的图-35ge_proto_xxxx_HcclAfterOptimizeOriginalGraph.txtHCCLHCCL原图优化之后的图-36ge_proto_xxxx_RunCustomPassAfterBuiltinFusionPass.txtGE内部Pass之后用户自定义Pass的出口图白名单37ge_proto_xxxx_PreRunAfterOptimizeOriginalGraph.txtGE经过各算子信息库原图优化处理OptimizeOriginalGraph接口调用之后的图结构白名单38ge_proto_xxxx_PrepareAfterUpdateInputOutputByUserOptions.txtGE根据用户参数对图输入输出做相关处理之后的图结构-39ge_proto_xxxx_PrepareAfterUpdateVariableFormats.txtGE对变量的Format进行相关处理之后的图结构-40ge_proto_xxxx_PreRunAfterPrepareRunningFormatRefiner.txtGE与上图相同-41ge_proto_xxxx_BeforeOptimizeOriginalGraphJudgeInsert.txtFEop_judge流程的入口图-42ge_proto_xxxx_OptimizeOriginalGraph_FeOpDtypeJudgeAfter.txtFE精度模式选择后的图-43ge_proto_xxxx_PreRunAfterRefineRunningPrecision.txtGE精度选择之后的图-44ge_proto_xxxx_AfterPrecisionRefine.txtGE精度选择之后经过转换算子融合生成的图-45ge_proto_xxxx_PreRunAfterAfterPrecisionRefine.txtGE精度选择之后经过转换算子融合再经过自动融合生成的图如果未开启自动融合功能该子图的内容会和ge_proto_xxxx_AfterPrecisionRefine.txt子图内容一致-46ge_proto_xxxx_OptimizeOriginalGraph_FeOpFormatJudgeAfter.txtFE格式选择后完整op_judge的图-47ge_proto_xxxx_OptimizeOriginalGraph_FeDistHeavyFormatAfter.txtFE重型算子扩散后的图结构-48ge_proto_xxxx_OptimizeOriginalGraph_FeInsertTransNodeAfter.txtFE插入转换算子后的图结构-49ge_proto_xxxx_PreRunAfterRefineRunningFormat.txtGE经过各算子信息库优化处理OptimizeOriginalGraphJudgeInsert接口调用之后的图结构-50ge_proto_xxxx_PreRunAfterSubexpressionMigration.txtGE动态分档场景下公共子表达式提取之后的图结构-51ge_proto_xxxx_before_SameTransdataBreadthFusionPass.txtGESameTransdataBreadthFusionPass入口图-52ge_proto_xxxx_after_SameTransdataBreadthFusionPass.txtGESameTransdataBreadthFusionPass出口图-53ge_proto_xxxx_OptimizeStage1_1.txtGE图优化1_1阶段处理之后的图结构-54ge_proto_xxxx_OptimizeStage1_2.txtGE图优化1_2阶段处理之后的图结构-55ge_proto_xxxx_PreRunAfterOptimize1.txtGE所有图优化1阶段处理之后的图结构-56ge_proto_xxxx_PreRunAfterOptimizeAfterStage1.txtGE经过各算子信息库优化处理OptimizeAfterStage1接口调用之后的图结构白名单57ge_proto_xxxx_RunCustomPassAfterOriginGraphOptimize.txtGE在原图优化阶段后执行自定义pass白名单58ge_proto_xxxx_PreRunAfterInferShape2.txtGE第二次InferShape处理之后的图结构-59ge_proto_xxxx_BeforeStagePartition.txtGEStage切分前的图-60ge_proto_xxxx_AfterStagePartition.txtGEStage切分后的图-61ge_proto_xxxx_AfterEnginePlacer.txtGE引擎选择完成后的图-62ge_proto_xxxx_Before_DSP.txtGE动静模型拆分前的图-63ge_proto_xxxx_After_DSP.txtGE动静模型拆分后的图-64ge_proto_xxxx_AfterDynamicShapePartition.txtGE动态shape图拆分之后的图结构-65ge_proto_xxxx_MergedComputeGraphAfterCompositeEnginePartition.txtGE经历对立子图拆分与子图优化处理之后的合并图结构-66ge_proto_xxxx_partition0_rank0_inputNodeGraph_AtomicEnginePartitioning.txtGE原子引擎规则图拆分后输入节点子图的图结构-67ge_proto_xxxx_partition0_rank1_new_sub_graph1_AtomicEnginePartitioning.txtGE原子引擎规则图拆分后子图1的图结构-68ge_proto_xxxx_partition0_rank2_new_sub_graph110_AtomicEnginePartitioning.txtGE原子引擎规则图拆分后子图110的图结构-69ge_proto_xxxx_OptimizeSubgraphPreProc.txtGE子图优化预处理出口图-70ge_proto_xxxx_DNN_VM_RTS_OptimizeSubGraphBefore.txtRTS--71ge_proto_xxxx_DNN_VM_RTS_OptimizeSubGraphAfter.txtRTS--72ge_proto_xxxx_AIcoreEngine_OptimizeSubGraphBefore.txtFEAI Core子图优化入口图-73ge_proto_xxxx_OptimizeSubGraphBefore.txtGE子图优化操作前的子图结构每张子图都有一份同名不同序号总个数根据子图个数确定-74ge_proto_xxxx_OptimizeSubGraphAfter.txtGE子图优化操作后的子图结构每张子图都有一份同名不同序号总个数根据子图个数确定-75ge_proto_xxxx_partition0_rank1_new_sub_graph1_lxfusion_input.txtAOE(lxfusion)ATC场景和AOE baseline场景的sgat输入图-76ge_proto_xxxx_partition0_rank1_new_sub_graph1_after_rebuild.txtAOE(lxfusion)AOE sgat内部流程UB融合图-77ge_proto_xxxx_AIcoreEngine_OptimizeSubGraphAfter.txtFEAI Core子图优化出口图-78ge_proto_xxxx_OptimizeSubgraphPostProc.txtGE子图优化后处理出口图-79ge_proto_xxxx_mergedComputeGraph.txtGE图合并之后的图结构与上图相同-80ge_proto_xxxx_MergedComputeGraphAfterAtomicEnginePartition.txtGE经历对立原子引擎拆分与子图优化处理之后的合并图结构-81ge_proto_xxxx_PreRunAfterOptimizeSubgraph.txtGE子图优化处理之后的图结构白名单82ge_proto_xxxx_OptimizeWholeGraphaicpu_tf_optimizer.txtGE调用各引擎的原图优化接口后的图信息OptimizeWholeGraph后为引擎名称-83ge_proto_xxxx_OptimizeWholeGraphaicpu_ascend_optimizer.txtGE调用各引擎的原图优化接口后的图信息OptimizeWholeGraph后为引擎名称-84ge_proto_xxxx_OptimizeWholeGraphdvpp_graph_optimizer.txtGE整图优化DVPP优化后出口图-85ge_proto_xxxx_OptimizeWholeGraphhccl_alltoallvc_fusion_optimizer.txtHCCLHCCL原图优化阶段融合优化后的图-86ge_proto_xxxx_OptimizeWholeGraphAIcoreEngine.txtGE调用各引擎的原图优化接口后的图信息OptimizeWholeGraph后为引擎名称-87ge_proto_xxxx_OptimizeWholeGraphDSAEngine.txtFE调用各引擎的原图优化接口后的图信息OptimizeWholeGraph后为引擎名称-88ge_proto_xxxx_OptimizeWholeGraphhccl_graph_optimizer.txtHCCLHCCL原图优化阶段优化的图-89ge_proto_xxxx_OptimizeWholeGraphDNN_VM_RTS_GRAPH_OPTIMIZER_STORE.txtGE调用各引擎的原图优化接口后的图信息OptimizeWholeGraph后为引擎名称-90ge_proto_xxxx_OptimizeWholeGraphDNN_VM_RTS_FFTS_PLUS_GRAPH_OPTIMIZER_STORE.txtRTS调用各引擎的原图优化接口后的图信息OptimizeWholeGraph后为引擎名称-91ge_proto_xxxx_OptimizeWholeGraphDNN_VM_HOST_CPU_OPTIMIZER.txtGE调用各引擎的原图优化接口后的图信息OptimizeWholeGraph后为引擎名称-92ge_proto_xxxx_OptimizeWholeGraphge_local_graph_optimizer.txtGE调用各引擎的原图优化接口后的图信息OptimizeWholeGraph后为引擎名称-93ge_proto_xxxx_OptimizeWholeGraphffts_plus.txtFE调用各引擎的原图优化接口后的图信息OptimizeWholeGraph后为引擎名称-94ge_proto_xxxx_PreRunAfterOptimizeWholeGraph.txtGE经过各算子信息库优化处理OptimizeWholeGraph接口调用之后的图结构-95ge_proto_xxxx_PreRunAfterOptimize2.txtGE所有图优化2阶段处理之后的图结构-96ge_proto_xxxx_PreRunAfterOptimizeGraphBeforeBuild.txtGE模型编译入口图白名单97ge_proto_xxxx_PreRunAfterOptimizeTensorMove.txtGE优化冗余TensorMove节点之后的图-98ge_proto_xxxx_BeforeHandleMemConflict.txtGE处理内存冲突之前的图-99ge_proto_xxxx_AfterHandleMemConflict.txtGE处理内存冲突之后的图-100ge_proto_xxxx_BeforeHandleMemoryLayoutConflict.txtGE解决内存排布冲突入口图-101ge_proto_xxxx_PreRunAfterMemConflictProc.txtGE解决内存读写冲突出口图-102ge_proto_xxxx_partition0_rank0_inputNodeGraph_SecondPartitioning.txtGE二拆操作后输入节点子图的图结构-103ge_proto_xxxx_partition0_rank1_new_sub_graph1_SecondPartitioning.txtGE二拆操作后子图1的图结构-104ge_proto_xxxx_partition0_rank2_new_sub_graph110_SecondPartitioning.txtGE二拆操作后子图110的图结构-105ge_proto_xxxx_BeforeUnfoldSubgraphs.txtGE动态shape图展开之前的图-106ge_proto_xxxx_AfterUnfoldSubgraphs.txtGE动态shape图展开之后的图-107ge_proto_xxxx_RunCustomPass_BeforeAssignLogicStream{pass_name}.txtGE用户自定义流分配Pass处理之前的图白名单108ge_proto_xxxx_RunCustomPass_AfterAssignLogicStream{pass_name}.txtGE用户自定义流分配Pass处理之后的图白名单109ge_proto_xxxx_AfterAssignResource.txtGE流分配、内存分配、GenTask之后的图-110ge_proto_xxxx_Build.txtGE模型编译出口图白名单111ge_proto_xxxx_PreRunAfterBuild.txtGE与上图相同-112ge_proto_xxxx_BeforeAttrsCompress.txtGE离线模型压缩前的图-113ge_proto_xxxx_AfterAttrsCompress.txtGE离线模型压缩后的图-114ge_proto_xxxx_BeforeAttrsDecompress.txtGE离线模型解压前的图-115ge_proto_xxxx_AfterAttrsDecompress.txtGE离线模型解压后的图-116ge_proto_xxxx_ComputeGraphBeforeLowering.txtGElowering前的计算图白名单117ge_proto_xxxx_Before_MultiStream_LoweringFirstLastEventSync.txtGE多流插入Event之前的执行图-118ge_proto_xxxx_ExeGraphBeforeOptimize.txtGE执行图优化前的执行图白名单119ge_proto_xxxx_AfterZeroCopy.txtGE零拷贝优化之后的执行图-120ge_proto_xxxx_AfterCEM.txtGECEM优化之后的执行图-121ge_proto_xxxx_AfterCopyFlowLaunch.txtGE随路拷贝优化后的执行图-122ge_proto_xxxx_TrustOutTensorAfter.txtGETrustOutTensor优化之后的执行图-123ge_proto_xxxx_AfterAicpuFuseHostInputs.txtGEAicpuFuseHostInputs优化之后的图-124ge_proto_xxxx_ExecuteGraphAfterSplit.txtGE动态shape最终的执行图白名单支持的型号全量芯片支持【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。