一、模块概述

compilation目录实现NPU专用的编译和图优化,提升推理性能。

图1:编译流程
graph TD
    A[模型代码] --> B[Torch编译]
    B --> C[图优化Pass]
    C --> D[图融合]
    D --> E[生成NPU内核]
    E --> F[ACL图执行]
                

二、文件结构

compilation/
├── __init__.py
├── acl_graph.py              # ACL图模式
├── compiler_interface.py      # 编译器接口
├── graph_fusion_pass_manager.py # 图融合Pass
├── piecewise.py              # 分段编译
└── utils.py                  # 工具函数

三、核心组件

acl_graph.py

ACL图模式

  • 图捕获
  • 图回放
  • 内存优化

compiler_interface.py

编译器接口

  • 编译入口
  • 后端选择
  • 配置管理

graph_fusion_pass_manager.py

图融合Pass管理

  • 算子融合
  • 内存优化
  • 性能优化

piecewise.py

分段编译

  • 图分割
  • 分段执行
  • 并行优化

四、ACL图执行流程

图2:ACL图执行流程
graph TD
    A[模型前向] --> B[图捕获]
    B --> C[图优化]
    C --> D[图编译]
    D --> E[图执行]
    E --> F[输出结果]
                
首页