三、NVIDIA Jetson Orin开发板-GPU加速

2024-05-25 07:20

本文主要是介绍三、NVIDIA Jetson Orin开发板-GPU加速,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、NVIDIA Jetson Orin开发板的硬件情况

df -h#查看操作系统情况
Filesystem      Size  Used Avail Use% Mounted on
**/dev/nvme0n1p1**  234G   17G  208G   8% /
none            7.4G     0  7.4G   0% /dev
tmpfs           7.6G     0  7.6G   0% /dev/shm
tmpfs           1.6G   19M  1.5G   2% /run
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           7.6G     0  7.6G   0% /sys/fs/cgroup
tmpfs           1.6G   28K  1.6G   1% /run/user/1000

Ubuntu操作系统安装在一个NVMe固态硬盘(/dev/nvme0n1p1)上

free -h#查看CPU内存情况
              total        used        free      shared  buff/cache   available
Mem:           15G         2G        11G        1.5G        2G         11G
Swap:          2G         0M         2G

CPU的内存情况

sudo pip3 install -U jetson-stats#安装
sudo systemctl restart jtop.service#启动
sudo jtop#q退出

显示GPU运行情况。

二、在NVIDIA Jetson Orin开发板上的PyCharm中运行代码并利用GPU进行加速

  1. cuda库和驱动程序 :
    jetpack(NVIDIA JetPack 是专为 NVIDIA Jetson 系列开发板(如 Jetson Nano、Jetson TX2、Jetson Xavier NX 和 Jetson AGX Orin 等)设计的综合性软件开发包。JetPack 提供了一整套工具和库,用于加速 AI 和边缘计算应用的开发。)
  2. 支持GPU加速的库:pytorch

1.1 安装命令

sudo apt update
sudo apt install nvidia-jetpack

1.2 查看cuda是否安装成功

ls /usr/local/cuda#显示cuda目录

1.3 配置环境变量

echo 'export PATH=/usr/local/cuda/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc

1.4 检验cuda版本,显示版本信息即安装成功

nvcc --version

2、pytorch安装
2.1、下载预编译轮子文件

https://forums.developer.nvidia.com/t/pytorch-for-jetson/72048
确认适合Python3.8和cuda11.4的文件
wget https://developer.download.nvidia.cn/compute/redist/jp/v44/pytorch/torch-1.10.0-cp38-cp38-linux_aarch64.whl
wget https://developer.download.nvidia.cn/compute/redist/jp/v44/pytorch/torchvision-0.11.1-cp38-cp38-linux_aarch64.whl

2.2、安装轮子文件

pip install numpy  # 安装 numpy
pip install torch-1.10.0-cp38-cp38-linux_aarch64.whl
#pip install torchvision-0.11.1-cp38-cp38-linux_aarch64.whl

2.3、安装依赖库OpenBLAS(它是一个高性能的线性代数库,pytorch依赖他进行数值计算)

sudo apt-get install libopenblas-dev

2.4、测试安装情况

import torch
print("CUDA available:", torch.cuda.is_available())
if torch.cuda.is_available():print("CUDA device name:", torch.cuda.get_device_name(0))

三、设置pycharm项目界面开机自启动

1、确定项目结构和入口脚本
/home/makerobo/PycharmProjects/SVDD-Python-master/

├── pyqt_test/
│   ├── boundary.png
│   ├── distance.png
│   └── main.py
├── SECURITY.md
├── src/
│   ├── BaseSVDD.py
│   └── __pycache__/

2、创建启动脚本‘run.sh’
在项目目录 /home/makerobo/PycharmProjects/SVDD-Python-master/ 中创建一个名为 run.sh 的启动脚本:

#!/bin/bash
export DISPLAY=:0  # 确保图形界面可用
cd /home/makerobo/PycharmProjects/SVDD-Python-master/  # 进入项目目录# 激活虚拟环境,我的虚拟环境为pytorch_svdd
source /home/makerobo/anaconda3/bin/activate pytorch_svdd# 运行Python脚本
python pyqt_test/main.py

确保‘run.sh’脚本有可执行权限:

chmod +x /home/makerobo/PycharmProjects/SVDD-Python-master/run.sh

3、创建‘systemd’服务单元文件
在‘/etc/systemd/system/’下创建‘SVDD-Python-master.service’服务文件

sudo vi /etc/systemd/system/SVDD-Python-master.service
[Unit]
Description=My PyCharm Python Project
After=network.target[Service]
ExecStart=/home/makerobo/PycharmProjects/SVDD-Python-master/run.sh
WorkingDirectory=/home/makerobo/PycharmProjects/SVDD-Python-master
Environment="DISPLAY=:0"#指定显示环境变量,用于 GUI 应用程序,确保它们知道在哪里绘制窗口
Environment="XAUTHORITY=/home/makerobo/.Xauthority"#用于身份验证,允许程序在显示器上绘制窗口
Environment="CONDA_EXE=/home/makerobo/anaconda3/bin/conda"#指定 conda 可执行文件的位置
Environment="CONDA_PREFIX=/home/makerobo/anaconda3/envs/pytorch_svdd"#指定激活的 conda 环境路径
Environment="CONDA_PYTHON_EXE=/home/makerobo/anaconda3/bin/python"#指定 Python 可执行文件的位置
Environment="CONDA_DEFAULT_ENV=pytorch_svdd"#指定默认的 conda 环境
Environment="PATH=/home/makerobo/anaconda3/envs/pytorch_svdd/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"#更新 PATH 变量,使其包含 conda 环境中的可执行文件路径
StandardOutput=inherit
StandardError=inherit
Restart=always
User=makerobo[Install]
WantedBy=multi-user.target

4、设置文件权限和所有权
确保项目目录及其文件的所有权和权限正确

sudo chown -R makerobo:makerobo /home/makerobo/PycharmProjects/SVDD-Python-master/
sudo chmod -R +x /home/makerobo/PycharmProjects/SVDD-Python-master/

5、启用和启动服务
重新加载‘system’配置:

sudo systemctl daemon-reload

启用服务,使其在开机时自动运行

sudo systemctl enable SVDD-Python-master.service

启动服务

sudo systemctl start SVDD-Python-master.service

6、验证服务是否正常运行

sudo systemctl status SVDD-Python-master.service

这篇关于三、NVIDIA Jetson Orin开发板-GPU加速的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1000841

相关文章

AI Toolkit + H100 GPU,一小时内微调最新热门文生图模型 FLUX

上个月,FLUX 席卷了互联网,这并非没有原因。他们声称优于 DALLE 3、Ideogram 和 Stable Diffusion 3 等模型,而这一点已被证明是有依据的。随着越来越多的流行图像生成工具(如 Stable Diffusion Web UI Forge 和 ComyUI)开始支持这些模型,FLUX 在 Stable Diffusion 领域的扩展将会持续下去。 自 FLU

如何用GPU算力卡P100玩黑神话悟空?

精力有限,只记录关键信息,希望未来能够有助于其他人。 文章目录 综述背景评估游戏性能需求显卡需求CPU和内存系统需求主机需求显式需求 实操硬件安装安装操作系统Win11安装驱动修改注册表选择程序使用什么GPU 安装黑神话悟空其他 综述 用P100 + PCIe Gen3.0 + Dell720服务器(32C64G),运行黑神话悟空画质中等流畅运行。 背景 假设有一张P100-

开发板NFS挂载文件目录

文章目录 序NFS1. 安装 NFS 服务器和客户端在服务器上(NFS 服务器端)在客户端上(NFS 客户端) 2. 配置 NFS 服务器创建共享目录编辑 `/etc/exports` 文件启动 NFS 服务 3. 在客户端挂载 NFS 共享创建挂载点挂载 NFS 共享验证挂载 4. 设置开机自动挂载5. 解决权限问题 序 本节主要实现虚拟机(服务器)与开发板(客户端)通过N

GPU 计算 CMPS224 2021 学习笔记 02

并行类型 (1)任务并行 (2)数据并行 CPU & GPU CPU和GPU拥有相互独立的内存空间,需要在两者之间相互传输数据。 (1)分配GPU内存 (2)将CPU上的数据复制到GPU上 (3)在GPU上对数据进行计算操作 (4)将计算结果从GPU复制到CPU上 (5)释放GPU内存 CUDA内存管理API (1)分配内存 cudaErro

PyInstaller问题解决 onnxruntime-gpu 使用GPU和CUDA加速模型推理

前言 在模型推理时,需要使用GPU加速,相关的CUDA和CUDNN安装好后,通过onnxruntime-gpu实现。 直接运行python程序是正常使用GPU的,如果使用PyInstaller将.py文件打包为.exe,发现只能使用CPU推理了。 本文分析这个问题和提供解决方案,供大家参考。 问题分析——找不到ONNX Runtime GPU 动态库 首先直接运行python程序

安卓开发板_联发科MTK开发评估套件串口调试

串口调试 如果正在进行lk(little kernel ) 或内核开发,USB 串口适配器( USB 转串口 TTL 适配器的简称)对于检查系统启动日志非常有用,特别是在没有图形桌面显示的情况下。 1.选购适配器 常用的许多 USB 转串口的适配器,按芯片来分,有以下几种: CH340PL2303CP2104FT232 一般来说,采用 CH340 芯片的适配器,性能比较稳定,价

麒麟系统安装GPU驱动

1.nvidia 1.1显卡驱动 本机显卡型号:nvidia rtx 3090 1.1.1下载驱动 打开 https://www.nvidia.cn/geforce/drivers/ 也可以直接使用下面这个地址下载 https://www.nvidia.com/download/driverResults.aspx/205464/en-us/ 1.1.3安装驱动 右击,

机器人助力上下料搬运,加速仓库转运自动化

近年来,国内制造业领域掀起了一股智能化改造的浪潮,众多工厂纷纷采纳富唯智能提供的先进物流解决方案,这一举措显著优化了生产流程,实现了生产效率的飞跃式增长。得益于这些成功案例,某信息技术服务企业在工厂智能物流建设的进程中,也选择了与富唯智能合作。 为了应对日益增长的物料搬运需求,匹配成品输出节拍,该公司引入了富唯智能复合机器人AMR与搬运机器人AGV,实现了仓库成品搬运自动化,大幅减少人工

ACM比赛中如何加速c++的输入输出?如何使cin速度与scanf速度相当?什么是最快的输入输出方法?

在竞赛中,遇到大数据时,往往读文件成了程序运行速度的瓶颈,需要更快的读取方式。相信几乎所有的C++学习者都在cin机器缓慢的速度上栽过跟头,于是从此以后发誓不用cin读数据。还有人说Pascal的read语句的速度是C/C++中scanf比不上的,C++选手只能干着急。难道C++真的低Pascal一等吗?答案是不言而喻的。一个进阶的方法是把数据一下子读进来,然后再转化字符串,这种方法传说中

Kubernetes的alpha.kubernetes.io/nvidia-gpu无法限制GPU个数

问题描述: Pod.yaml文件中关于GPU资源的设置如下: 然而在docker中运行GPU程序时,发现宿主机上的两块GPU都在跑。甚至在yaml文件中删除关于GPU的请求,在docker中都可以运行GPU。 原因: 上例说明alpha.kubernetes.io/nvidia-gpu无效。查看yaml文件,发现该docker开启了特权模式(privileged:ture): 而