7.使用 IPU 进行预测¶

7.使用 IPU 进行预测¶

7. 使用 IPU 进行预测 — Paddle-Inference documentation

Paddle-Inference

latest

使用指南

Paddle Inference 简介

如何选择正确的推理引擎

推理流程

架构设计

Roadmap

安装指南

系统要求

安装 Python API

安装 C++ API

安装 C API

安装 Go API

下载安装 Linux 推理库

下载安装 Windows 推理库

下载安装 Mac 推理库

源码编译

源码编译基础

Linux 下从源码编译

Windows 下从源码编译

macOS 下从源码编译

快速开始

快速上手Python推理

快速上手C++推理

快速上手C推理

快速上手GO推理

导出模型

飞桨框架模型导出

其他框架模型导出

模型结构可视化

x86 CPU部署

在x86 CPU上开发推理应用

在x86 CPU上部署BF16模型

X86 CPU 上部署量化模型

NVIDIA-GPU部署

GPU 原生推理

Paddle Inference GPU 多流推理

混合精度推理

GPU TensorRT 加速推理(NV-GPU/Jetson)

GPU TensorRT 低精度或量化推理

其他硬件部署

飞腾/鲲鹏 CPU 安装说明

申威 CPU 安装说明

兆芯 CPU 安装说明

龙芯 CPU 安装说明

昆仑 XPU 安装说明

AMD GPU / 海光 DCU 安装说明

昇腾 NPU 安装说明

Graphcore IPU 安装说明

Paddle Inference 部署示例

调试与优化

精度核验与问题追查

性能分析

多线程并发推理

Benchmark

CPU 性能数据

GPU 性能数据

API

Python API 文档

create_predictor 方法

get_version 方法

Config 类

1. Config 类定义

2. 设置预测模型

3. 使用 CPU 进行预测

4. 使用 GPU 进行预测

5. 使用 XPU 进行预测

6. 使用 IPU 进行预测

7. 使用 ONNXRuntime 进行预测

8. 设置模型优化方法

9. 启用内存优化

10. 设置缓存路径

11. Profile 设置

12. Log 设置

13. 查看config配置

Predictor 类

PredictorPool 类

Tensor 类

枚举类型

C++ API 文档

CreatePredictor 方法

GetVersion 方法

Config 类

1. Config 构造函数

2. 设置预测模型

3. 使用 CPU 进行预测

4. 使用 GPU 进行预测

5. 使用 XPU 进行预测

6. 使用 ONNXRuntime 进行预测

7. 使用 IPU 进行预测

8. 设置模型优化方法

9. 启用内存优化

10. 设置缓存路径

11. FC Padding

12. Profile 设置

13. Log 设置

14. 查看config配置

PaddlePassBuilder 类

Predictor 类

PredictorPool 类

Tensor 类

枚举类型

C API 文档

枚举类型

动态数组结构体

Config 方法

1. 创建 Config

2. 设置预测模型

3. 使用 CPU 进行预测

4. 使用 GPU 进行预测

5. 使用 XPU 进行预测

6. 使用 ONNXRuntime 进行推理

7. 设置模型优化方法

8. 启用内存优化

9. 设置缓存路径

10. FC Padding

11. Profile 设置

12. Log 设置

13. 查看config配置

Predictor 方法

Tensor 方法

GO API 文档

AnalysisConfig 方法

1. 创建 Config

2. 设置预测模型

3. 使用 CPU 进行预测

4. 使用 GPU 进行预测

5. 使用 ONNXRuntime 进行推理

6. 设置模型优化方法

7. 启用内存优化

8. Profile 设置

9. Log 设置

10. 查看config配置

Predictor 方法

Tensor 方法

枚举类型

常见问题与解答

环境与编译问题

运行报错

精度与性能

7. 使用 IPU 进行预测

Paddle-Inference

»

API »

C++ API 文档 »

Config 类 »

7. 使用 IPU 进行预测

View page source

7. 使用 IPU 进行预测¶

API定义如下:

// 启用 IPU 进行预测

// 参数:ipu_device_num - 所需要的 IPU 个数.

// 参数:ipu_micro_batch_size - 计算图输入的 batch size,用于根据输入 batch size 进行全图 Tensor shape 推导,仅在动态输入 batch size 的情况生效

// 参数:ipu_enable_pipelining - 使能 IPU 间数据流水

// 参数:ipu_batches_per_step - 在使能数据流水的条件下,指定每次跑多少 batch 的数据,如果关闭数据流水,该值应设置为 1

// 返回:None

void EnableIpu(int ipu_device_num = 1, int ipu_micro_batch_size = 1,

bool ipu_enable_pipelining = false,

int ipu_batches_per_step = 1);

// 配置 IPU 构图参数

// 参数:ipu_enable_fp16 - 使能 float16 模式,将 float32 计算图转换为 float16 计算图

// 参数:ipu_replica_num - 设置实例个数,举例 ipu_device_num = 2,表示单个实例需要 2 个 IPU 运行,设置 ipu_replica_num = 8,表示总共有 8 个相同实例,所以总共需要 16 个IPU

// 参数:ipu_available_memory_proportion - 设置 matmul / conv Op 可使用的内存比例,取值 (0.0, 1.0], 比例越高,计算性能越好

// 参数:ipu_enable_half_partial - matmul Op 中间结果以 float16 存储于片上

// 返回:None

void SetIpuConfig(bool ipu_enable_fp16 = false, int ipu_replica_num = 1,

float ipu_available_memory_proportion = 1.0,

bool ipu_enable_half_partial = false);

代码示例:

// 创建 Config 对象

paddle_infer::Config config(FLAGS_model_dir);

// 启用 IPU,并设置单个实例所需要的 IPU 个数为 1

config.EnableIpu(1);

// 启动 float16 模式

config.SetIpuConfig(true);

Next

Previous

© Copyright 2020, Paddle-Inference Developer.

Built with Sphinx using a

theme

provided by Read the Docs.

相关推荐

酷睿i3笔记本CPU报价
365完美体育

酷睿i3笔记本CPU报价

📅 10-30 👁️ 9517
球靓人美!盘点中国女足的美女球星:王霜领衔,谁是队花?
【亲测免费】 PESCMS Team 团队任务管理系统:高效协作的利器

友情链接