CANN/ge ATC工具模式参数说明
2026/9/10 1:49:30 网站建设 项目流程

--mode

【免费下载链接】geGE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力,并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge

产品支持情况

全量芯片支持

功能说明

运行模式。

关联参数

  • 若--mode取值为1或5,则需要与--om、--json参数配合使用。如果将原始模型文件转换成带shape信息的JSON文件,则还需要与--dump_mode参数配合使用。
  • 若--mode取值为6,则只需要与--om参数配合使用。
  • 若--mode取值为3,需要自行指定预检结果保存路径时,需要与--check_report参数配合使用。
  • 若--soc_version取值为Ascend035,则该参数仅支持配置为30。

参数取值

参数值:

  • 0:(默认值)生成适配AI处理器的离线模型,模型文件格式为*.om。
  • 1:离线模型或原始模型文件转JSON文件,方便查看模型中的参数信息。
  • 3:仅做预检,检查模型文件的内容是否合法。
  • 5:dump图结构文件转JSON文件,用于解析图编译过程中产生的dump图结构(ge_proto*.txt格式文件,ge_onnx*.pbtxt暂不支持),然后将dump图结构转换成JSON文件,方便用户定位。
  • 6:针对已有的离线模型,显示模型信息,包括模型占用的关键资源信息、编译与运行环境等信息。
  • 30:生成适配AI处理器的离线模型,模型文件格式为*.exeom,同时生成图调试信息文件*.dbg,用于dump、profiling的图调试。*.om模型和*.exeom模型的对比如下:
    • *.exeom文件感知具体的硬件调度能力、包含目标执行平台的运行时数据结构(这些数据以二进制的形式保存在*.exeom文件中),在模型加载阶段,加载恢复二进制内容,根据用户应用程序传递的数据区地址,或实际申请到的数据地址,刷新二进制中的地址指针值后,将二进制内容直接拷贝至Device,达到提升模型加载性能、降低模型加载内存峰值占用的效果。在一些资源受限的场景,建议使用*.exeom模型文件,增强产品的商用竞争力。
    • *.om文件不感知具体的硬件调度能力、包含中间态的抽象数据结构,在模型加载阶段,再根据具体执行平台的调度特性,生成运行时数据结构。

参数值约束:

若--mode取值为5,需要设置相关环境变量,先获取dump图结构文件,方法请参见2.c。设置完环境变量,模型转换完毕,在执行atc命令的当前路径会生成相应的图结构文件。

推荐配置及收益

无。

示例

  • 参数值取值为0:

    atc --mode=0 --framework=3 --model=$HOME/module/resnet50_tensorflow.pb --output=$HOME/module/out/tf_resnet50 --soc_version=<soc_version>
  • 参数值取值为1:

    • 离线模型转换为JSON文件

      atc --mode=1 --om=$HOME/module/out/tf_resnet50.om --json=$HOME/module/out/tf_resnet50.json
    • 原始模型文件转换为JSON文件

      atc --mode=1 --om=$HOME/module/resnet50_tensorflow.pb --json=$HOME/module/out/tf_resnet50.json --framework=3
  • 参数值取值为3:

    atc --mode=3 --framework=3 --model=$HOME/module/resnet50_tensorflow.pb --soc_version=<soc_version>

    执行完毕,在当前路径生成预检结果文件check_result.json。

  • 参数值取值为5:

    atc --mode=5 --om=$HOME/module/ge_proto_00000000_PreRunBegin.txt --json=$HOME/module/out/ge_proto.json
  • 参数值取值为6:

    atc --mode=6 --om=$HOME/module/out/tf_resnet50.om

    命令执行完毕,屏幕会打印类似如下信息:

    ============ Display Model Info start ============ # 模型转换使用的atc命令 Original Atc command line: ${INSTALL_DIR}/bin/atc.bin --model=$HOME/module/resnet50_tensorflow.pb --framework=3 --output=$HOME/module/out/tf_resnet50 --soc_version=<soc_version> --display_model_info=1 # ATC软件版本信息、soc_version版本信息、原始框架信息 system info: atc_version[xxx], soc_version[xxx], framework_type[xxx]. # 运行时的占用内存、权重大小、逻辑stream数目、event数目 resource info: memory_size[xxx B], weight_size[xxx B], stream_num[xxx], event_num[xxx]. # 离线模型文件中各分区大小、包括ModelDef、权重、tbe_kernels、task_info、so占用的大小等 om info: modeldef_size[xxx B], weight_data_size[xxx B], tbe_kernels_size[xxx B], cust_aicpu_kernel_store_size[xxx B], task_info_size[xxx B], so_store_size[xxx B]. ============ Display Model Info end ============
  • 参数值取值为30:

    atc --mode=30 --framework=3 --model=$HOME/module/resnet50_tensorflow.pb --output=$HOME/module/out/tf_resnet50 --soc_version=<soc_version>

依赖约束

无。

【免费下载链接】geGE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力,并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询