资讯动态

CANN/ge pyatc CLI设计文档

发布时间:2026/9/10 6:30:01 来源:尧图企业网站定制
pyatc CLI 设计文档【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge1. 背景ATC 是 GE 离线模型编译工具现有入口为api/atc/atcshell wrapper。该方式在新进程中启动 ATCTBE 与自定义 Python pass 使用的 Python 解释器由 ATC 进程自行解析与用户在终端中选择的python可能不一致。本设计在随 CANN 分发的ge-py中增加ge.pyatc使用与 ATC 相同的命令行参数在当前进程中进入原有ge::main_impl()主流程使 TBE / Python pass 与用户选择的解释器一致。2. 目标与范围2.1 目标提供等价 CLI 入口python3 -m ge.pyatc与cann_install/bin/pyatc。ATC 参数、help、stdout / stderr、退出码与原生 ATC 行为一致不在 Python 层做参数校验或独自维护 help 文案。复用ge::main_impl()与atc_static不新增第二套 ATC 主流程。OM / OM2 / exeom 产物格式不变。2.2 非目标不在 Python 层重做 ATC 参数解析与编译逻辑。不承诺单进程多次可重入调用、线程安全或并发调用。不将main()作为稳定对外 Python API。3. 用户体验使用 CANN 环境前执行source cann_install/set_env.sh使pyatc、ge包与libpyatc_wrapper.so可被当前解释器加载。之后pyatc 与 atc 相同的参数 或 python3 -m ge.pyatc 与 atc 相同的参数命令行参数原样交给 ATC。pyatc --help与atc --help参数内容一致usage、示例和失败提示中的入口名显示为pyatc。python3 -m ge.pyatc是模块入口的推荐写法用户也可以按环境需要使用其他 Python 3 解释器执行-m ge.pyatc。pyatc是安装在cann_install/bin下的 shell wrapper默认使用当前PATH解析到的python3可通过PYTHON/path/to/python pyatc ...显式指定解释器。4. 总体架构薄入口Python 侧只做参数转发与调用约定适配ATC 业务逻辑仍在main_impl与各既有模块中。CANN bin wrappercann_install/bin/pyatc只负责补充 CANNPYTHONPATH/LD_LIBRARY_PATH并通过 Python 入口函数参数传入 wrapper 绝对路径作为原始argv[0]不依赖 wheelconsole_scripts避免绑定安装 wheel 时的 Python 解释器。独立libpyatc_wrapper.so链接atc_static经薄 C 封装进入ge::main_impl与libgraph_wrapper.so、libge_runtime_wrapper.so、liboffline_compile_wrapper.so分离避免 ATC 全局状态影响其他 ge-py 用法。5. 兼容性原atc/atc.bin与既有 ge-py API 行为不变。旧版本 OM 在新版本下执行不受影响pyatc为新增入口依赖新版本 CANNbin/pyatcwrapper、ge-py wheel 中的libpyatc_wrapper.so与模块代码。ge-py wheel 不声明console_scripts入口避免在pip install -t cann_install/python/site-packages时生成不可被PATH发现或绑定错误解释器的脚本。6. 验收标准pyatc --xxx、python3 -m ge.pyatc --xxx与atc --xxx输出等价。pyatc --helpcann_install/bin/pyatcshell wrapper行为与模块入口一致。典型模型编译参数可透传并产出与atc一致的 OM。失败时进程退出码与 ATC 主流程一致。TBE / 自定义 Python pass 路径优先使用当前进程解释器。【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价