Pyatc 接口
产品支持情况
全量芯片支持。
功能说明
pyatc是ATC(Ascend Tensor Compiler)离线模型编译工具的Python封装接口,在功能上与ATC命令行工具完全等价,旨在为 Python用户提供更灵活的集成体验。
pyatc与ATC命令行工具的区别是:
- ATC命令行工具:作为独立子进程启动,编译过程所使用的Python解释器由atc进程自行解析,可能与用户当前终端环境(如python3)不一致,容易引发依赖冲突或路径问题。
- pyatc:直接在当前主进程中执行编译逻辑,复用用户当前的Python解释器及环境变量,确保编译环境与运行环境完全一致,避免了进程间的环境隔离问题。
调用方式
先参见环境准备完成相关环境变量的设置,然后根据实际使用场景选择以下任一入口:
- 使用命令行入口:
1pyatc [参数]
- 使用Python模块入口:
1python3 -m ge.pyatc [参数]
返回值说明
调用结束后通过进程退出码(exit code)表示执行结果:
- 0:执行成功。
- 非 0:执行失败,错误信息输出至标准输出。
调用示例
1
|
pyatc --model=resnet50.onnx --framework=5 --soc_version=<soc_version> --output=resnet50 |
<soc_version>取值或者查询方法如下:
- 针对如下产品:在安装AI处理器的服务器执行npu-smi info命令进行查询,获取Name信息。实际配置值为AscendName,例如Name取值为xxxyy,实际配置值为Ascendxxxyy。
Atlas A2 训练系列产品 /Atlas A2 推理系列产品 Atlas 200I/500 A2 推理产品 Atlas 推理系列产品 Atlas 训练系列产品 - 针对
Atlas A3 训练系列产品 /Atlas A3 推理系列产品 ,在安装AI处理器的服务器执行npu-smi info -t board -i id -c chip_id命令进行查询,获取Chip Name和NPU Name信息,实际配置值为Chip Name_NPU Name。例如Chip Name取值为Ascendxxx,NPU Name取值为1234,实际配置值为Ascendxxx_1234。其中:- id:设备id,通过npu-smi info -l命令查出的NPU ID即为设备id。
- chip_id:芯片id,通过npu-smi info -m命令查出的Chip ID即为芯片id。
- 针对Atlas 350 加速卡,在安装AI处理器的服务器执行npu-smi info -t board -i id命令进行查询,获取Chip Name和NPU Name信息,实际配置值为Chip Name_NPU Name。例如Chip Name取值为Ascendxxx,NPU Name取值为1234,实际配置值为Ascendxxx_1234。
其中,id为设备id,通过npu-smi info -l命令查出的NPU ID即为设备id。
父主题: Python语言接口