当前位置: 首页 > news >正文

Jetson Orin Nano Super之 onnxruntime 编译安装

Jetson Orin Nano Super之 onnxruntime 编译安装

  • 1. 源由
  • 2. 步骤
    • 步骤一:安装3.26 cmake
    • 步骤二:下载代码
    • 步骤三:编译代码
    • 步骤四:找到安装包
    • 步骤五:安装whl包
  • 3. 注意
  • 4. 参考资料

1. 源由

  • Build onnxruntime 1.19.2 fail due to API HardwareCompatibilityLevel
  • Build onnxruntime v1.19.2 for Jetpack 5.1.4 L4T 35.6 Faild
  • How to translate xx/x scripts of TensorRT installation?

onnxruntime 受到TensorRT版本的限制,在8.x TensorRT阶段支持的并不太好,尤其由于接口的变化,兼容性并不理想。

从 Jetson Orin Nano Super 开始,也就是Jetpack 6.2之后,TensorRT据反馈说是能够升级,从前面的软件版本和API设计/维护看,非常吃力!!!

2. 步骤

步骤一:安装3.26 cmake

$ sudo apt remove --purge cmake
$ wget https://github.com/Kitware/CMake/releases/download/v3.26.4/cmake-3.26.4-linux-aarch64.sh
$ sudo mkdir -p /opt/cmake
$ sudo sh cmake-3.26.4-linux-aarch64.sh --prefix=/opt/cmake --skip-license
$ echo 'export PATH=/opt/cmake/bin:$PATH' >> ~/.bashrc
$ source ~/.bashrc

确认版本安装成功:

$ cmake --version

步骤二:下载代码

$ git clone https://github.com/SnapDragonfly/onnxruntime.git
$ cd onnxruntime
$ git checkout nvidia_v1.19.2

步骤三:编译代码

$ export PATH="/usr/local/cuda/bin:${PATH}"
$ export CUDACXX="/usr/local/cuda/bin/nvcc"$ ./build.sh --config Release --update --build --parallel --build_wheel \--use_tensorrt --cuda_home /usr/local/cuda --cudnn_home /usr/lib/aarch64-linux-gnu \--tensorrt_home /usr/lib/aarch64-linux-gnu

步骤四:找到安装包

或者进入到该目录下进行安装。

$ ls build/Linux/Release/dist/
build/Linux/Release/dist/onnxruntime_gpu-1.19.2-cp310-cp310-linux_aarch64.whl

步骤五:安装whl包

$ cd build/Linux/Release/dist/
$ python3 -m pip install --no-cache onnxruntime_gpu-1.19.2-cp310-cp310-linux_aarch64.whl

3. 注意

编译过程需要注意onnxruntime和TensorRT的API兼容性问题。

4. 参考资料

【1】Jetson Orin Nano Super之pytorch + torchvision安装
【2】Jetson Orin Nano Super之jetson-fpv开源代码下载
【3】Ardupilot开源无人机之Geek SDK进展2024-2025

http://www.lryc.cn/news/527554.html

相关文章:

  • 开发环境搭建-3:配置 nodejs 开发环境 (fnm+ node + pnpm)
  • [SWPUCTF 2022 新生赛]js_sign
  • 农业信息化的基本框架
  • OpenAI的真正对手?DeepSeek-R1如何用强化学习重构LLM能力边界——DeepSeek-R1论文精读
  • Vue 3 中的父子组件传值:详细示例与解析
  • 回顾2024,展望2025
  • 【Python实现机器遗忘算法】复现2021年顶会 AAAI算法Amnesiac Unlearning
  • Vue 3 30天精进之旅:Day 03 - Vue实例
  • 【ArcGIS微课1000例】0141:提取多波段影像中的单个波段
  • 【第九天】零基础入门刷题Python-算法篇-数据结构与算法的介绍-六种常见的图论算法(持续更新)
  • 落地 轮廓匹配
  • 【漫话机器学习系列】064.梯度下降小口诀(Gradient Descent rule of thume)
  • JAVA(SpringBoot)集成Kafka实现消息发送和接收。
  • AI刷题-蛋糕工厂产能规划、优质章节的连续选择
  • 在线可编辑Excel
  • 什么是词嵌入?Word2Vec、GloVe 与 FastText 的区别
  • WPS数据分析000010
  • Qt中QVariant的使用
  • Avalonia UI MVVM DataTemplate里绑定Command
  • 动态规划DP 数字三角型模型 最低通行费用(题目详解+C++代码完整实现)
  • deepseek R1的确不错,特别是深度思考模式
  • Linux 常用命令 - sort 【对文件内容进行排序】
  • MyBatis最佳实践:提升数据库交互效率的秘密武器
  • 选择困难?直接生成pynput快捷键字符串
  • DeepSeek-R1:强化学习驱动的推理模型
  • 国内优秀的FPGA设计公司主要分布在哪些城市?
  • 3.日常英语笔记
  • 基于RIP的MGRE实验
  • 【开源免费】基于Vue和SpringBoot的美食推荐商城(附论文)
  • Pandas DataFrame 拼接、合并和关联