我要提问
ARTICLE DETAIL

资讯详情

前沿编程新知与开发实战干货的深度解读。

CANN/ge特性交叉分析指南

CANN/ge特性交叉分析指南 特性交叉分析【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge目的确保新需求在 GE 的核心执行场景下均被覆盖避免遗漏导致部分场景功能缺失或行为异常。 逐项分析本需求与以下场景的关系填写适用/不适用。适用的场景需在设计章节给出对应方案不适用的场景需说明理由。场景适用性分析说明静态 Shape{适用/不适用}{说明需求在该场景下的影响和设计要点}动态 Shape{适用/不适用}{说明需求在该场景下的影响和设计要点}动态 Shape 静态子图图拆分{适用/不适用}{说明需求在混合图拆分场景下的影响是否影响拆分边界、子图内行为等}离线场景atc 编译{适用/不适用}{说明需求是否影响离线编译流程、OM 产物结构或序列化/反序列化}在线场景框架适配{适用/不适用}{说明需求是否影响在线编译执行流程、与 Adapter 的交互等}分析指引静态 Shape需求是否影响已知 shape 的编译优化内存复用、算子在线编译、下沉调度是否涉及runtime/v1/路径特别关注DavinciModel的加载/初始化/执行流程。动态 Shape需求是否涉及 shape 不确定的算子或执行路径是否涉及运行时 tiling、动态内存分配是否涉及runtime/v2/路径特别关注LoweringGlobalData、ModelConverter、LoweringFileConstantNode等 lowering 阶段组件。动态 Shape 静态子图关键交叉场景这是最容易遗漏的场景。动态 shape 模型中的静态子图通过DavinciModelKernel走 v1 路径。分析要点数据跨越 v2→v1 边界如果需求在 v2 的LoweringGlobalData中新增了数据这些数据是否需要传递到 v1 的DavinciModel具体来说static_compiled_graph_converter.cc的CreateDavinciModelOnInitRoot是否需要将新增数据作为输入传给DavinciModelCreate/DavinciModelCreateV2kernelDavinciModel 接口变更如果需求修改了DavinciModel的接口如新增 Set 方法DavinciModelKernel中的DavinciModelCreate/DavinciModelCreateV2是否需要调用新接口davinci_model_kernel.cc是否需要新增 KernelContext 输入索引检查方法grepDavinciModelCreate和DavinciModelCreateV2确认所有创建 DavinciModel 的路径都能获取到新增的数据。离线场景需求是否影响 atc 编译流程、OM 文件格式、模型序列化/反序列化离线编译产物是否需要新增字段在线场景需求是否影响 GE 与前端框架适配层TorchAir/TF Adapter的交互是否影响session级别的编译和执行流程【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表