ONNXRuntime的第四部分学习笔记有哪些要点?

2026-05-06 04:250阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1480个文字,预计阅读时间需要6分钟。

ONNXRuntime的第四部分学习笔记有哪些要点?

在Python端进行ONNX模型验证的结果如下,接下来在PyTorch和ONNXRuntime-gpu推理库上分别进行效果和效率分析。结论显示,相较于初始设置的50ms,效率提升非常显著。本文将使用C++编写测试代码进行推理验证。

接上一篇在Python端的onnx模型验证结果,上一篇在Pytorch和onnxruntime-gpu推理库上分别进行效果效率统计分析,结论要比最初设置的50ms高很多,这一篇我将在C++端写个测试代码进行推理验证。

一、onnxruntime的C++库

AI模型部署肯定是要用C++的,这是毋庸置疑的,目前onnxruntime提供了适配很多编程语言接口的API,最常用的就是Python和C++,一个简易一个高效,Python接口可用于快速验证idea,C++接口适用于集成到推理引擎中来调用。C++总的来说是把效率排在第一位的,所以没有像Python那样强封装,相对而言比较灵活,但又不像C那样琐碎,毕竟C++也是OOP语言。扯远了,onnxruntime的c++库可以从官方github下载到,可以直接下载对应的release版本,里面包含了动态库和头文件,如下图,我下载的是windows版本的。直接导入到我们的推理引擎中来调用就可以了。


一般我们引入第三方库会包含两部分内容,一个是头文件,这里面是所有我们可以调用的函数声明、错误类型等等,另一部分是库文件,库文件分动态库和静态库,win版的动态库文件还有对应的动态库的导入库(.lib结尾),这很容易和静态库混淆。

阅读全文

本文共计1480个文字,预计阅读时间需要6分钟。

ONNXRuntime的第四部分学习笔记有哪些要点?

在Python端进行ONNX模型验证的结果如下,接下来在PyTorch和ONNXRuntime-gpu推理库上分别进行效果和效率分析。结论显示,相较于初始设置的50ms,效率提升非常显著。本文将使用C++编写测试代码进行推理验证。

接上一篇在Python端的onnx模型验证结果,上一篇在Pytorch和onnxruntime-gpu推理库上分别进行效果效率统计分析,结论要比最初设置的50ms高很多,这一篇我将在C++端写个测试代码进行推理验证。

一、onnxruntime的C++库

AI模型部署肯定是要用C++的,这是毋庸置疑的,目前onnxruntime提供了适配很多编程语言接口的API,最常用的就是Python和C++,一个简易一个高效,Python接口可用于快速验证idea,C++接口适用于集成到推理引擎中来调用。C++总的来说是把效率排在第一位的,所以没有像Python那样强封装,相对而言比较灵活,但又不像C那样琐碎,毕竟C++也是OOP语言。扯远了,onnxruntime的c++库可以从官方github下载到,可以直接下载对应的release版本,里面包含了动态库和头文件,如下图,我下载的是windows版本的。直接导入到我们的推理引擎中来调用就可以了。


一般我们引入第三方库会包含两部分内容,一个是头文件,这里面是所有我们可以调用的函数声明、错误类型等等,另一部分是库文件,库文件分动态库和静态库,win版的动态库文件还有对应的动态库的导入库(.lib结尾),这很容易和静态库混淆。

阅读全文