[jetson]paddlepaddle2.4.0在jetpack5.0.2源码编译流程

news2025/4/16 19:24:31

由于官方暂时没有提供jetson对应的jetson jetpack5.0.2预编译包,因此只有源码编译,本次编译不带Tensorrt,编译已经顺利成功,注意本次使用的设备是jetson NX

测试环境:

ubuntu20.04

jetpack5.0.2

GCC-8.4

Software part of jetson-stats 4.1.5 - (c) 2023, Raffaello Bonghi
Model: NVIDIA Jetson Xavier NX Developer Kit - Jetpack 5.0.2 GA [L4T 35.1.0]
NV Power Mode: MODE_20W_6CORE - Type: 8
jtop:
 - Version: 4.1.5
 - Service: Active
Libraries:
 - CUDA: 11.4.239
 - cuDNN: 8.4.1.50
 - TensorRT: 8.4.1.5
 - VPI: 2.1.6
 - Vulkan: 1.3.203
 - OpenCV: 4.5.4 - with CUDA: NO

耗时:36小时左右

安装难度评价:很难,从事编程老司机需要36小时才能完成,刚入门的可能会更慢
首先安装依赖:

sudo apt-get install gcc g++ make cmake git vim unrar python3 python3-dev python3-venv python3-pip swig wget patchelf libopencv-dev 
sudo apt-get install libfreetype6-dev libjpeg-dev zlib1g-dev liblapack-dev  gfortran libpng-dev  

sudo pip3 install virtualenv cython
# sudo pip3 install numpy protobuf wheel setuptools 

注意你的GCC是9.4.0的话一定要换成GCC-8的,我试过GCC9.4.0失败了

设置文件打开数量:

在 /etc/security/limits.conf 文件中添加两行,注意左边星号也要写进去。

* hard noopen 102400
* soft noopen 102400

重启计算机,重启后执行以下指令,请将${user}切换成当前用户名。

su ${user}
ulimit -n 102400

安装nccl:

git clone https://github.com/NVIDIA/nccl.git   
cd nccl     
make -j4  

sudo make install  

安装nccl过程十分漫长预计40分钟左右

安装Paddle:

git clone  https://gitee.com/paddlepaddle/Paddle.git

cd Paddle

mkdir build

cd build

cmake ..  -DWITH_CONTRIB=OFF -DWITH_MKL=OFF -DWITH_MKLDNN=OFF -DWITH_TESTING=OFF -DCMAKE_BUILD_TYPE=Release -DON_INFER=ON -DWITH_PYTHON=ON -DWITH_XBYAK=OFF  -DWITH_NV_JETSON=ON -DPY_VERSION=3.8 -DCUDA_ARCH_NAME=Auto

make -j4

这个过程需要24小时。。。第三方源码总是下不来,你需要不停make直到成功,最好挂梯子,我没有挂耗费一天半时间,这还是在网好的情况下,网不好就得自己想办法了。

最后说明这个不是水文,验收安装成果:

后面我又编译了带tensorrt的源码

首先自己创建一个文件夹,然后把jetson里面的tensorrt库复制复制过来

比如/home/nvidia/tensorrt_8.4.1.5

cd include

cp -r /usr/include/aarch64-linux-gnu/Nv* ./

cd  lib

cp -r /usr/lib/aarch64-linux-gnu/libnv* ./

编译指令:

cmake ..  -DWITH_CONTRIB=OFF -DWITH_MKL=OFF -DWITH_MKLDNN=OFF -DWITH_TESTING=OFF -DCMAKE_BUILD_TYPE=Release -DON_INFER=ON -DWITH_PYTHON=ON -DWITH_XBYAK=OFF  -DWITH_NV_JETSON=ON -DPY_VERSION=3.8 -DCUDA_ARCH_NAME=Auto -DWITH_TENSORRT=ON -DTENSORRT_ROOT=/home/nvidia/tensorrt_8.4.1.5 -DARM=ON

make TARGET=ARMV8 -j8

参考文章:

1、https://www.paddlepaddle.org.cn/inference/v2.3/user_guides/source_compile.html

2、https://github.com/mingquanyuan/PaddlePaddle-Jetson

3、如何在Jetson nano上同时编译TensorRT与Paddle Lite框架 - 极术社区 - 连接开发者与智能计算生态

4、Paddle飞桨动态图教程—Jetson AGX Xavier刷机和编译Paddle_jetson nccl_钱彬 (Qian Bin)的博客-CSDN博客

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

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

相关文章

Centos7搭建NFS

1.NFS简介Network File System(网络文件系统,通过网络让不同的机器系统之间可以彼此共享文件和目录,类似Samba服务。2.NFS挂载原理 在网络中服务器和客户端进行连接都是通过端口进行数据传输,而NFS服务端的端口是随机的,从而导致N…

Linux----网络基础(2)--应用层的序列化与反序列化--守护进程--0226

文章中有使用封装好的头文件,可以在下面连接处查询。 Linux相关博文中使用的头文件_Gosolo!的博客-CSDN博客 1. 应用层 我们程序员写的一个个解决我们实际问题, 满足我们日常需求的网络程序, 都是在应用层 1.2 协议 我们在之前的套接字编程中使用的是…

最适合你的团队云协作工具

团队云协作工具哪个好?使用Zoho Projects的团队云协作软件套件,在一个平台上无缝协作,激励您的团队在任何地方以最好的状态完成他们的工作。 使您的团队能够使用团队云协作软件在任何地方进行协作和沟通。Zoho Projects提供了一套强大…

三天吃透计算机网络八股文

本文已经收录到Github仓库,该仓库包含计算机基础、Java基础、多线程、JVM、数据库、Redis、Spring、Mybatis、SpringMVC、SpringBoot、分布式、微服务、设计模式、架构、校招社招分享等核心知识点,欢迎star~ Github地址:https://github.com/…

一文读懂光学天线

天线,按维基百科的定义,"是一种用来发射或接收无线电波—或更广泛来讲—电磁波的器件"。例如,在无线通信系统中,天线被用于发射与接收射频与微波波段的电磁波。而在我们的智能手机中,就有内置的平面倒F天线(…

01-认识产品经理

文章目录引入1.1 合格的产品经理1.2 产品经理的分类按服务对象不同划分按产品平台不同划分按公司所属行业不同按工作内容划分按职级高低划分1.3 产品经理的岗位职责产品的开发流程核心团队成员及其职责产品经理工作中常见误区1.4 产品经理的能力素质专业技能(干得了…

Unity Lighting -- 配置平行光源和天空盒

识别不同种类的光源 在游戏或实时应用程序中,我们可能会创建多种不同种类的场景,比如室内场景、室外场景、真实的场景或完全想象的场景。即便项目是一个完全的想象的或是科幻的故事,灯光也是非常重要的一环,它能极大提升沉浸感。 …

Python3-条件控制

Python3 条件控制 Python 条件语句是通过一条或多条语句的执行结果(True 或者 False)来决定执行的代码块。 可以通过下图来简单了解条件语句的执行过程: 代码执行过程: if 语句 Python中if语句的一般形式如下所示: if condi…

Atlassian Server用户新选择 | 数据中心产品是否适合您的企业(3)?

2024年2月,也就是一年不到,Atlassian将终止对Server产品及插件的所有支持。 此公告发布后,许多用户需要了解怎样的前进方向才是最适合企业的。为此,Atlassian不仅提供云版,还提供了本地部署的数据中心(Data…

jupyter lab安装和配置

jupyter lab 安装和配置 一、jupyter lab安装并配置 安装jupyterlab pip install jupyterlab启动 Jupyter lab默认会打开实验环境的,也可以自己在浏览器地址栏输入127.0.0.1:8888/lab 汉化 pip install jupyterlab-language-pack-zh-CN刷新一下网页&#xff0…

ChatGPT解答:PYQT5 组件化实例,Python代码实现,给出100个代码实例

ChatGPT解答: PYQT5 组件化实例,Python代码实现,给出100个代码实例 PYQT5 组件化实例,Python代码实现,给出100个代码实例 实现一个简单的窗口 import sys from PyQt5.QtWidgets import QApplication, QWidgetapp QA…

我90后,零基础成功转行python工程师,从月薪5K到现在月入2W+改变真的难吗?

我是25岁转行学python的。说实在,转行就是奔着挣钱去的。希望我的经历可以给想转行的朋友带来一点启发和借鉴。 先简单介绍下个人背景,三流大学毕业,物流专业,学习能力一般,没啥特别技能,反正就很普通的一…

CSS3新特性-变量

2017年三月,微软宣布 Edge 浏览器将支持 CSS 变量。 这个重要的 CSS 新功能,所有主要浏览器已经都支持了。本文全面介绍如何使用它,你会发现原生 CSS 从此变得异常强大。 一、变量的声明 声明变量的时候,变量名前面要加两根连词…

python入门应该怎么学习

国外Python的使用率非常高,但在国内Python是近几年才火起来,Python正处于高速上升期市场对于Python开发人才的需求量急剧增加,学习Python的前景比较好。 Python应用领域广泛,意味着选择Python的同学在学成之后可选择的就业领域有…

虚函数与多态性

5.1多态性概述: 按实施的机制,多态可以分为两类: 虚函数的定义: (前面思维是虚基类,别搞混了) 运行时多态的条件: 运行时的多态: 基类中有show(),派生类中也有show&…

叠氮化物标记糖92659-90-0,2-[(Azidoacetyl)amino]-2-deoxy-D-glucose广泛用于体内代谢标记

基础产品数据:CAS号:92659-90-0中文名:2-[(叠氮基乙酰基)氨基]-2-脱氧葡萄糖英文名:2-[(Azidoacetyl)amino]-2-deoxy-D-glucose性 状:白色粉末温馨提示:所有的试剂仅用于科研实验。结构式(Struc…

ChatGPT解答:纯前端文档预览,Vue实现,无需后端,支持Word、Excel、PPT、pdf、文本、图片,附接入demo和文档

ChatGPT解答:纯前端文档预览,Vue实现,无需后端,支持Word、Excel、PPT、pdf、文本、图片,附接入demo和文档 ChatGPTDemo Based on OpenAI API (gpt-3.5-turbo). 纯前端文档预览,Vue实现,无需后…

【软件测试】性能测试面试题都问什么?面试官想要什么?回答惊险避坑......

目录:导读前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜)前言 1、你认为不同角色关…

A Bio-Inspired Multi-Exposure Fusion Frameworkfor Low-light Image Enhancement

Abstract弱光图像的能见度较低,不利于人类观察和计算机视觉算法。尽管许多图像增强技术已经被提出来解决这个问题,现有的方法不可避免地引入对比度增强不足和过度。受人类视觉系统的启发,我们设计了一个用于微光图像增强的多曝光融合框架。在…

机器学习错题集(1)

生成模型与判别模型的区别: 在机器学习中,对于有监督学习可以将其分为两类模型:判别式模型和生成式模型。简单地说,判别式模型是针对条件分布建模,而生成式模型则针对联合分布进行建模。已知输入变量x: 生成…