【JetsonNano】onnxruntime-gpu 环境编译和安装,支持 Python 和 C++ 开发

news2025/1/12 18:16:11

1. 设备

在这里插入图片描述

2. 环境

sudo apt-get install protobuf-compiler libprotoc-dev
 
export PATH=/usr/local/cuda/bin:${PATH}
export CUDA_PATH=/usr/local/cuda
export cuDNN_PATH=/usr/lib/aarch64-linux-gnu
export CMAKE_ARGS="-DONNX_CUSTOM_PROTOC_EXECUTABLE=/usr/bin/protoc"

3.源码

mkdir /code
cd /code
git clone --recursive https://github.com/Microsoft/onnxruntime.git 
# 从 tag v1.16.0 切换分支进行编译
git checkout -b v1.16.0 v1.16.0

git submodule update --init --recursive --progress
cd /code/onnxruntime

4.编译

# --parallel 2  使用 2 个 cpu 进行编译,防止内存和CPU性能不足导致编译识别
./build.sh --config Release --update --build --parallel 2 --build_wheel \
--use_tensorrt --cuda_home /usr/local/cuda --cudnn_home /usr/lib/aarch64-linux-gnu \
--tensorrt_home /usr/lib/aarch64-linux-gnu

若编译识别,内存不足,可进行扩大交换内存

https://labelnet.blog.csdn.net/article/details/136538479

编译完成标识

...
build complate!

5. 安装

cd /build/Linux/Release
sudo make install

在这里插入图片描述

6.查看

/usr/lcoal 查看安装

7.下载

(1) 整个 build 目录,包含 build/Linux/Relase

https://download.csdn.net/download/LABLENET/88943160

(2) 仅 Python3.8 安装文件,onnxruntime-gpu-1.16.0-cp38-cp38-linux-aarch64.whl

https://download.csdn.net/download/LABLENET/88943155

8. 静态库编译安装

1)编译

添加 l --build_shared_lib

./build.sh --config Release --update --build --parallel --build_shared_lib --build_wheel \
--use_tensorrt --cuda_home /usr/local/cuda --cudnn_home /usr/lib/aarch64-linux-gnu \
--tensorrt_home /usr/lib/aarch64-linux-gnu

2)安装

sudo cmake install

在这里插入图片描述

9. 静态库下载使用

C++, 见文件 https://download.csdn.net/download/LABLENET/88943411

在这里插入图片描述

10 C++ 开发

CMakeList.txt 中配置使用

...
# onnxruntime
find_package(onnxruntime REQUIRED)
message(onnxruntime_dir: ${onnxruntime_DIR})
target_link_libraries (
    ${MODULE_NAME} PUBLIC
    onnxruntime::onnxruntime
)

C++ 代码

#include <onnxruntime_cxx_api.h>

int main()
{
    auto providers = Ort::GetAvailableProviders();
    cout << Ort::GetVersionString() << endl;
    for (auto provider : providers)
    {
        cout << provider << endl;
    }
}

在这里插入图片描述

11. Python 开发

安装依赖包

pip3 install onnxruntime_gpu-1.16.0-cp38-cp38-linux_aarch64.whl   -i https://pypi.tuna.tsinghua.edu.cn/simple/

开发

import onnxruntime

print("OnnxRuntime Provider : ", onnxruntime.get_available_providers())

输出

OnnxRuntime Provider :  ['TensorrtExecutionProvider', 'CUDAExecutionProvider', 'CPUExecutionProvider']

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1519794.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spirngboot中文乱码解决方案

在使用springboot的时候,如果我们直接在控制器里面返回中文, 则默认可能会是乱码,因为默认的编码是ISO8859-1, 要解决这个问题, 就需要我们通过重写springboot里面的configureMessageConverters方法来将默认的编码设置为utf-8即可解决, 当然你的类文件编码也必须要是utf-8的, …

Spring中的BeanFactory

BeanFactory&#xff0c;以Factory结尾&#xff0c;表示是一种工厂。 作用&#xff1a; 是一个接口&#xff0c;定义了生产Bean对象的工厂应有的方法&#xff0c;如下图,定义了一个Bean工厂&#xff0c;最基本的方法。 职责&#xff1a; 它是负责生产和管理bean的一个工厂&…

Python数据分析教程(非常详细)从零基础入门到精通,看这一篇就够了_python数据分析从入门到精通

1、为什么选择Python进行数据分析? Python是一门动态的、面向对象的脚本语言&#xff0c;同时也是一门简约&#xff0c;通俗易懂的编程语言。Python入门简单&#xff0c;代码可读性强&#xff0c;一段好的Python代码&#xff0c;阅读起来像是在读一篇外语文章。Python这种特性…

mysql: 如何开启慢查询日志?

1 确认慢查询日志功能已开启 执行以下sql语句&#xff0c;查看慢查询功能是否开启&#xff1a; show VARIABLES like slow_query_log;如果为ON&#xff0c;表示打开&#xff1b;如果为OFF&#xff0c;表示没有打开&#xff0c;需要开启慢查询功能。 执行以下sql语句&#xff0…

【UE5】动画混合空间的基本用法

项目资源文末百度网盘自取 什么是动画混合空间 混合空间分为两种: 通过一个数值控制通过两个数值控制 下面通过演示让大家更直观地了解 在Character文件夹中单击右键,选择动画(Animation),选择旧有的混合空间1D 然后选择骨骼&#xff08;动画是基于骨骼显示的,所以需要选择…

要将镜像推送到GitLab的Registry中的步骤

1、通过cli 模式登录gitlab &#xff08;命令行模式&#xff09; docker login git.asc-dede.de Username: haiyang Password: Login Succeeded 2、查看我的本地镜像&#xff1a; 3&#xff0c;推送镜像apollo_core到对应的gitlab项目的Registry 中 docker push registry.gi…

媒体发稿:澳门媒体发稿7个流程

推广平台澳门是一个重要的度假旅游娱乐终点&#xff0c;都是媒体领域热议的话题。对于澳门的媒体发稿营销推广要求&#xff0c;大家提供了一个简单易用的套餐系统软件&#xff0c;帮助大家在澳门媒体上发表推广文章。下面我们就根据7个阶段&#xff0c;详解构建这一套餐推广平台…

从0开始回顾MySQL---事务四大特性

事务概述 事务是一个最小的工作单元。在数据库当中&#xff0c;事务表示一件完整的事儿。一个业务的完成可能需要多条DML语句共同配合才能完成&#xff0c;例如转账业务&#xff0c;需要执行两条DML语句&#xff0c;先更新张三账户的余额&#xff0c;再更新李四账户的余额&…

ansible 部署FATE集群单边场景

官方文档&#xff1a; https://github.com/FederatedAI/AnsibleFATE/blob/main/docs/ansible_deploy_FATE_manual.md https://github.com/FederatedAI/AnsibleFATE/blob/main/docs/ansible_deploy_two_sides.md gitee详细文档&#xff1a; docs/ansible_deploy_one_side.md…

十二、项目采购管理

十二、项目采购管理 1、规划采购管理 ​ 规划采购管理是记录项目采购决策、明确采购方法&#xff0c;及识别潜在卖方的过程。 1,1、关键输入 组织过程资产 组织使用的各种合同协议类型也会影响规划采购管理过程中的决策。能够影响规划采购管理过程的组织过程资产包括&#xf…

洗地机选购技巧:希亦|追觅|添可|海尔洗地机值不值得买?多维度测评对比揭晓

如今市面上的洗地机质量良莠不齐&#xff0c;还有其琳琅满目的功能&#xff0c;让很多新手小白挑花了眼。所以&#xff0c;想要挑选一款适合自己家的洗地机&#xff0c;看似容易实则很难&#xff0c;毕竟洗地机是打扫家务的帮手&#xff0c;如果帮手不给力&#xff0c;效果也会…

企业内部培训考试系统单场培训会议解决方案

企业日常内训中&#xff0c;有些时候也会组织会议培训&#xff0c;再按照会议日程分上下午签到进行培训考勤&#xff0c;并形成培训签到表&#xff0c;如果用活动报名工具&#xff0c;一般只能实现单次的签到考勤&#xff0c;如果用培训班系统则操作过于繁琐&#xff0c;不利于…

想做人力RPO项目,网红老阳分享的这个RPO项目可行吗?

近年来&#xff0c;人力资源行业经历了快速的发展和变革&#xff0c;其中RPO(Recruitment Process Outsourcing&#xff0c;招聘流程外包)项目备受关注。网红老阳近期分享了一个RPO项目&#xff0c;让不少想要涉足这一领域的人产生了浓厚的兴趣。那么&#xff0c;老阳分享的RPO…

【C语言】五种方法实现C语言中大小写字母的转化

文章目录 &#x1f4dd;tolower/toupper函数&#x1f309;tolower&#x1f320; toupper &#x1f320; ASCII码关系&#x1f309;位操作&#x1f309;宏定义 &#x1f320;小巧第五位&#x1f6a9;总结 &#x1f4dd;tolower/toupper函数 &#x1f309;tolower tolower函数是…

Windows 11 DirectX 诊断工具获取电脑型号

Windows 11 DirectX 诊断工具获取电脑型号 1. dxdiag2. DirectX 诊断工具References 1. dxdiag Win R 打开运行窗口&#xff0c;输入 dxdiag&#xff0c;点击确定按钮。 2. DirectX 诊断工具 通过 DirectX 诊断工具&#xff0c;可以直接找到电脑型号&#xff0c;型号是硬件制…

鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:Menu)

以垂直列表形式显示的菜单。 说明&#xff1a; 该组件从API Version 9开始支持。后续版本如有新增内容&#xff0c;则采用上角标单独标记该内容的起始版本。 Menu组件需和bindMenu或bindContextMenu方法配合使用&#xff0c;不支持作为普通组件单独使用。 子组件 包含MenuIt…

Django框架——模型

在上篇文章中&#xff0c;我们学习了Django框架——模板&#xff0c;这篇文章我们学习Django框架——模型。 模型是描述、存储数据的字段和行为&#xff0c;一般情况下&#xff0c;一个模型映射一张数据库表&#xff0c;模型类的属性对应数据库表字段&#xff0c;模型的对象对…

【机器学习】走进监督学习:构建智能预测模型的第一步

&#x1f388;个人主页&#xff1a;豌豆射手^ &#x1f389;欢迎 &#x1f44d;点赞✍评论⭐收藏 &#x1f917;收录专栏&#xff1a;机器学习 &#x1f91d;希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正&#xff0c;让我们共同学习、交流进…

旭日x3派部署自己训练的模型(安全帽识别、视频流推理、yolov5-6.2)

旭日x3派部署自己训练的模型&#xff08;安全帽识别、视频流推理、yolov5-6.2&#xff09;windows&#xff0c;框架pytorch&#xff0c;python3.7 效果模型训练模型转换1、pt模型文件转onnx2、检查onnx模型3、准备校准数据4、onnx转bin 上板视频流推理1、图片推理2、视频流推理…

腾讯在线文档下载文档html格式

腾讯在线文档下载文档html格式 步骤 chrome 浏览器打开该文档&#xff08;edge不行&#xff09; 同时按住ctrlp快捷键调出腾讯文档内置的打印页面&#xff0c;打印范围要选择整个工作薄&#xff0c;纸张建议调大一点&#xff0c;边距建议较窄&#xff0c;缩放要选择宽度撑满&…