Logo
POPRT USER GUIDE
Version: 1.1.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
  • 5. Features
    • 5.1. 使用 FP8 数据类型
      • 5.1.1. IPU FP8 类型介绍
      • 5.1.2. FP8 量化介绍
      • 5.1.3. FP32 模型转 FP8 模型的流程
      • 5.1.4. FP8 模型转换工具使用方法
      • 5.1.5. FP8 模型转换精度调试经验
    • 5.2. 使用 Overlap IO
      • 5.2.1. 原理
      • 5.2.2. 配置 IO Tiles
      • 5.2.3. 调试
      • 5.2.4. 并发请求
      • 5.2.5. 示例
    • 5.3. 使用 Dynamic Batch Size
      • 5.3.1. 背景
      • 5.3.2. 示例
    • 5.4. 使用 Packing
      • 5.4.1. 背景
      • 5.4.2. Packing 及 Unpacking
      • 5.4.3. Transformer-based NLP Models
      • 5.4.4. 如何使用 Packing
        • 下载模型
        • 转换模型
        • 运行模型
    • 5.5. 多模型融合
      • 5.5.1. 实现 PopRT 模型融合
      • 5.5.2. 实现 PopRT Runtime 融合模型推理
    • 5.6. 开发 Custom Operation
      • 5.6.1. 编写自定义算子
        • 创建一个带有 LeakyRelu OP 的 ONNX 模型文件
        • 在 PopRT 中使用自定义算子
    • 5.7. 开发 Custom Passes
      • 5.7.1. 实现 Custom Passes
      • 5.7.2. 使用 Custom Passes
        • 在 PopRT CLI 中使用 Custom Passes
        • 在 Python API 中使用 Custom Passes
    • 5.8. 开发 Custom Patterns
      • 5.8.1. 实现 Custom PopART Patterns
      • 5.8.2. 在 PopRT 中使用 Custom PopART Patterns
        • 方法一: 在 PatternCreator 设置 Pattern 默认使能
        • 方法二: 通过 CLI 命令行参数启用指定的 Pattern
    • 5.9. 开发 Custom Transforms
      • 5.9.1. 实现 Custom PopART Transform
      • 5.9.2. 在 PopRT 中使用 Custom Transform
    • 5.10. 使用 Manual Sharding
      • 5.10.1. Sharding / 模型并行
      • 5.10.2. Pipelining / 流水线并行
      • 5.10.3. Manual Sharding 流程
      • 5.10.4. 配置 Manual Sharding
        • 通过 PopRT CLI 配置 Manual Sharding
        • 通过 poprt.converter.Sharder API 配置 Manual Sharding
      • 5.10.5. 示例
  • 6. Python API
    • 6.1. poprt module
    • 6.2. poprt.compiler module
    • 6.3. poprt.runtime module
    • 6.4. poprt.backends module
    • 6.5. poprt.quantizer module
  • 7. Passes
    • 7.1. Pass 抽象
    • 7.2. PopRT 中注册的 Pass
  • 8. C++ API
    • 8.1. PopRT Compiler
    • 8.2. PopRT Runtime
      • 8.2.1. ModelRunner
      • 8.2.2. PackRunner
      • 8.2.3. Device
  • 9. 文档修订记录
  • 10. Trademarks & copyright
POPRT USER GUIDE

10. Trademarks & copyright

Graphcloud®, Graphcore®, Poplar® and PopVision® are registered trademarks of Graphcore Ltd.

Bow™, Bow-2000™, Bow Pod™, Colossus™, In-Processor-Memory™, IPU-Core™, IPU-Exchange™, IPU-Fabric™, IPU-Link™, IPU-M2000™, IPU-Machine™, IPU-POD™, IPU-Tile™, PopART™, PopDist™, PopLibs™, PopRun™, PopTorch™, Streaming Memory™ and Virtual-IPU™ are trademarks of Graphcore Ltd.

All other trademarks are the property of their respective owners.

This software is made available under the terms of the Graphcore End User License Agreement (EULA) and the Graphcore Container License Agreement. Please ensure you have read and accept the terms of the corresponding license before using the software. The Graphcore EULA applies unless indicated otherwise.

Copyright © 2023 Graphcore Ltd. All rights reserved.

Previous