Logo
POPRT USER GUIDE
Version: 1.5.0
  • 1. 简介
    • 1.1. 背景
    • 1.2. 架构
    • 1.3. 工作流程
  • 2. 安装
    • 2.1. PopRT 和 Poplar SDK 版本的对应关系
    • 2.2. 从 Docker 镜像快速开始
    • 2.3. 在 Host 上安装 PopRT
      • 2.3.1. For Ubuntu 20.04
  • 3. 快速开始
    • 3.1. 主要参数介绍
    • 3.2. 转换并运行模型
      • 3.2.1. 下载 ONNX 模型
      • 3.2.2. 获取 ONNX 模型输入输出信息
      • 3.2.3. 指定输入 shape
      • 3.2.4. 指定模型精度
      • 3.2.5. 运行模型
      • 3.2.6. 导出 PopEF
    • 3.3. 快速部署
      • 3.3.1. 运行导出的 PopEF
      • 3.3.2. 运行转换后的 ONNX 模型
    • 3.4. Python API 示例
  • 4. 使用 PopRT
    • 4.1. 使用方法
      • 4.1.1. CLI 使用
        • Named Arguments
        • Sub-commands:
          • tf2onnx
  • 5. Features
    • 5.1. Passes
      • 5.1.1. Pass 抽象
    • 5.2. FP8
      • 5.2.1. IPU FP8 类型介绍
      • 5.2.2. FP8 量化介绍
      • 5.2.3. FP32 模型转 FP8 模型的流程
      • 5.2.4. FP8 模型转换工具使用方法
      • 5.2.5. FP8 模型转换精度调试经验
    • 5.3. Overlap I/O
      • 5.3.1. 原理
      • 5.3.2. 配置 IO Tiles
      • 5.3.3. 调试
      • 5.3.4. 并发请求
      • 5.3.5. 示例
    • 5.4. Dynamic batch size
      • 5.4.1. 背景
      • 5.4.2. 示例
    • 5.5. Packing
      • 5.5.1. 背景
      • 5.5.2. Packing 及 unpacking
      • 5.5.3. Transformer-based NLP models
      • 5.5.4. 如何使用 packing
        • 下载模型
        • 转换模型
        • 运行模型
    • 5.6. CPU packing
      • 5.6.1. 背景
      • 5.6.2. 功能模块介绍
        • 1. 超时处理
        • 2. 用户数据预处理
        • 3. 数据累积
        • 4. Pack 后处理
      • 5.6.3. Pack 算法
        • 1. 首尾相连的 pack 方法
        • 2. FirstFit pack 方法
        • 3. NextFit pack 方法
      • 5.6.4. 示例
    • 5.7. Model fusion
      • 5.7.1. 实现 PopRT 模型融合
      • 5.7.2. 实现 PopRT runtime 融合模型推理
    • 5.8. Custom operations
      • 5.8.1. 编写自定义算子
        • 创建一个带有 LeakyRelu OP 的 ONNX 模型文件
        • 在 PopRT 中使用自定义算子
    • 5.9. Custom passes
      • 5.9.1. 实现 custom passes
      • 5.9.2. 使用 custom passes
        • 在 PopRT CLI 中使用 custom passes
        • 在 Python API 中使用 custom passes
    • 5.10. Custom patterns
      • 5.10.1. 实现 custom PopART patterns
      • 5.10.2. 在 PopRT 中使用 custom PopART patterns
        • 方法一: 在 PatternCreator 设置 pattern 默认使能
        • 方法二: 使用 Python API 启用或关闭指定的 pattern
        • 方法三: 通过 CLI 命令行参数启用或关闭指定的 pattern
    • 5.11. Custom transforms
      • 5.11.1. 实现 custom PopART transform
      • 5.11.2. 在 PopRT 中使用 custom transform
    • 5.12. Manual sharding
      • 5.12.1. Sharding / 模型并行
      • 5.12.2. Pipelining / 流水线并行
      • 5.12.3. Manual sharding 流程
      • 5.12.4. 配置 manual sharding
        • 通过 PopRT CLI 配置 manual sharding
        • 通过 poprt.converter.Sharder API 配置 manual sharding
      • 5.12.5. 示例
    • 5.13. Error handling
      • 5.13.1. 背景
      • 5.13.2. 相关的错误处理方式
    • 5.14. PopRT frontend
      • 5.14.1. ONNX frontend
      • 5.14.2. TensorFlow frontend
        • 通过 PopRT CLI 加载 TensorFlow 模型
        • 通过 poprt.frontend API 加载 TensorFlow 模型
    • 5.15. Auto sharding
      • 5.15.1. 模型并行
      • 5.15.2. Auto sharding 原理介绍
        • 备选点策略
        • 切分方案遍历策略
      • 5.15.3. Auto sharding 使用方法
        • 参数介绍
        • 举例
    • 5.16. Model debugger
      • 5.16.1. 使用方法
      • 5.16.2. 使用示例
  • 6. Python API
    • 6.1. poprt module
    • 6.2. poprt.compiler module
    • 6.3. poprt.runtime module
    • 6.4. poprt.frontend module
    • 6.5. poprt.backends module
    • 6.6. poprt.quantizer module
    • 6.7. poprt.passes module
      • 6.7.1. Built-in passes
  • 7. C++ API
    • 7.1. PopRT compiler
    • 7.2. Executable
    • 7.3. PopRT runtime
      • 7.3.1. DeviceManager
  • 8. 文档修订记录
  • 9. Trademarks & copyright
POPRT USER GUIDE

5. Features

  • 5.1. Passes
  • 5.2. FP8
  • 5.3. Overlap I/O
  • 5.4. Dynamic batch size
  • 5.5. Packing
  • 5.6. CPU packing
  • 5.7. Model fusion
  • 5.8. Custom operations
  • 5.9. Custom passes
  • 5.10. Custom patterns
  • 5.11. Custom transforms
  • 5.12. Manual sharding
  • 5.13. Error handling
  • 5.14. PopRT frontend
  • 5.15. Auto sharding
  • 5.16. Model debugger
Previous Next