1. TopsInference API Sample¶
1.1. 概述¶
本手册概述了Enflame软件栈中包含的TopsInference示例代码,通过各示例代码实现的功能展示TopsInference核心api的用法并支持用户快速上手应用TopsInference。
注:TopsInference示例代码仅供参考,并非限制生产环境下的唯一用法。
1.2. 介绍¶
TopsInference提供的示例代码及其功能有:
c++示例代码 | python示例代码 | 描述 |
---|---|---|
sampleResNet | sampleResNet | 展示如何使用基本api完成基准图像分类推理 |
sampleOnnxParser | sampleOnnxParser | 展示在基本api的基础上使用fp16混精并对特定层设置fp32类型的模型完成图像分类推理 |
sampleRunWithBatch | sampleRunWithBatch | 展示在基本api的基础上使用runWithBatch api并使用H2H或D2D模式完成异步图像分类推理 |
sampleRunV2Static | sampleRunV2Static | 展示在基本api的基础上使用runV2 api设置静态形状完成图像分类推理 |
sampleRunV2Dynamic | sampleRunV2Dynamic | 展示在基本api的基础上使用runV2 api设置动态形状完成异步图像分类推理 |
sampleResNetFromMem | sampleResNetFromMem | 展示在基本api的基础上从内存中读取模型完成图像分类推理 |
topsexec | --- | 命令行工具,可以在无需开发应用程序的情况下快速使用TopsInference |
1.2.1. sampleResNet¶
本示例代码用于展示如何使用基础api完成基准图像分类推理,包括模型读取、优化、编译和执行推理。
1.2.1.1. c++版本¶
在/usr/local/gcu/sample/TopsInference/cpp-samples/sampleResNet
路径下可以找到该示例代码,路径下的README.md
文件详细说明了示例的具体用法。
1.2.1.2. python版本¶
在/usr/local/lib/python3.6/dist-packages/TopsInference
路径下,可以找到TopsInference_pysample_codes.tar
包,解压后在其内部的sampleResNet
文件夹下可以找到该示例代码,路径下的README.md
文件详细说明了示例的具体用法。
1.2.2. sampleOnnxParser¶
本示例代码用于展示在基本api的基础上使用fp16混精并对特定层设置fp32类型的模型完成图像分类推理。
1.2.2.1. c++版本¶
在/usr/local/gcu/sample/TopsInference/cpp-samples/sampleOnnxParser
路径下可以找到该示例代码,路径下的README.md
文件详细说明了示例的具体用法。
1.2.2.2. python版本¶
在/usr/local/lib/python3.6/dist-packages/TopsInference
路径下,可以找到TopsInference_pysample_codes.tar
包,解压后在其内部的sampleOnnxParser
文件夹下可以找到该示例代码,路径下的README.md
文件详细说明了示例的具体用法。
1.2.3. sampleRunWithBatch¶
本示例展示在基本api的基础上使用runWithBatch api并使用H2H或D2D模式完成异步图像分类推理。
1.2.3.1. c++版本¶
在/usr/local/gcu/sample/TopsInference/cpp-samples/sampleRunWithBatch
路径下可以找到该示例代码,路径下的README.md
文件详细说明了示例的具体用法。
1.2.3.2. python版本¶
在/usr/local/lib/python3.6/dist-packages/TopsInference
路径下,可以找到TopsInference_pysample_codes.tar
包,解压后在其内部的sampleRunWithBatch
文件夹下可以找到该示例代码,路径下的README.md
文件详细说明了示例的具体用法。
1.2.4. sampleRunV2Static¶
本示例展示在基本api的基础上使用runV2 api使用静态形状完成图像分类推理。
1.2.4.1. c++版本¶
在/usr/local/gcu/sample/TopsInference/cpp-samples/sampleRunV2Static
路径下可以找到该示例代码,路径下的README.md
文件详细说明了示例的具体用法。
1.2.4.2. python版本¶
在/usr/local/lib/python3.6/dist-packages/TopsInference
路径下,可以找到TopsInference_pysample_codes.tar
包,解压后在其内部的sampleRunV2Static
文件夹下可以找到该示例代码,路径下的README.md
文件详细说明了示例的具体用法。
1.2.5. sampleRunV2Dynamic¶
本示例展示在基本api的基础上使用runV2 api设置动态形状完成图像分类推理。
1.2.5.1. c++版本¶
在/usr/local/gcu/sample/TopsInference/cpp-samples/sampleRunV2Dynamic
路径下可以找到该示例代码,路径下的README.md
文件详细说明了示例的具体用法。
1.2.5.2. python版本¶
在/usr/local/lib/python3.6/dist-packages/TopsInference
路径下,可以找到TopsInference_pysample_codes.tar
包,解压后在其内部的sampleRunV2Dynamic
文件夹下可以找到该示例代码,路径下的README.md
文件详细说明了示例的具体用法。
1.2.6. sampleResNetFromMem¶
本示例展示在基本api的基础上从内存中读取模型完成图像分类推理。
1.2.6.1. c++版本¶
在/usr/local/gcu/sample/TopsInference/cpp-samples/sampleResNetFromMem
路径下可以找到该示例代码,路径下的README.md
文件详细说明了示例的具体用法。
1.2.6.2. python版本¶
在/usr/local/lib/python3.6/dist-packages/TopsInference
路径下,可以找到TopsInference_pysample_codes.tar
包,解压后在其内部的sampleResNetFromMem
文件夹下可以找到该示例代码,路径下的README.md
文件详细说明了示例的具体用法。
1.2.7. topsexec¶
命令行工具,可以在无需开发应用程序的情况下快速使用TopsInference,仅提供c++版本。
1.2.7.1. c++版本¶
在/usr/local/gcu/sample/TopsInference/cpp-samples/topsexec
路径下可以找到该示例代码,路径下的README.md
文件详细说明了具体用法。