SSD上 NVIDIA Jetson Orin NANO系統如何刷

news/2024/5/19 12:11:08 标签: 边缘计算

  对于AI计算性能高达40TOPS的Jetson Orin Nano开发套件来说,如果缺少性能够好的存储相匹配,会让总体执行效益大打折扣。为此,NVIDIA在Jetson Orin Nano开发套件上配置2个M.2接口(如下图),最高能安装2片高速PCIe总线的NVMe高速存储设备,这样大大提升了这个产品的实用性。

  由于M.2设备有较繁琐的规格,包括接口总线以及SSD卡的长度。目前Orin Nano开发套件所支持的接口都是PCIe总线的NVMe种类,长度规格分别为2280(80毫米长)与2230(30毫米长)两种,支持的总线规格分别为PCIe 3.0x4与PCIe 3.0x2,因此在选择规格时千万不能弄错,否则就无法使用。

  安装NVMe SSD存储卡非常简单,只要卡插入M.2接口(注意方向性)后用开发套件上所配置的螺丝将SSD固定好就行。本文使用PCIe NVMe M.2/2280规格的SSD存储设备(如下图)来安装Jetpack系统,读者请自行配置所需要的规格与容量。


  我们可以将这些NVMe SSD设备作为单纯数据存储用途,也可以将Jetson启动系统安装到NVMe SSD上以提高系统稳定性与执行性能,毕竟这种使用方法会比microSD(或称TF)卡启动方式更有优势。

  过去要将完整的Jetpack系统安装在Jetson的NVMe SSD存储上是极为繁琐的,现在使用NVIDIA的SDK Manager 1.9.2以上的版本,就能非常轻松地执行这项任务。

  目前SDK Manager只支持Ubuntu操作系统,因此首要工作便是需要一台安装Ubuntu操作系统的x86电脑或者VMWare虚拟机,选择18.04、20.04或22.04等LTS版本都可以。本文直接使用x86电脑来操作,关于虚拟机的使用方式,主要是注意“Removable Devices”的连接,其他环节都是一样的。

  现在就开始以下的步骤:

  下载并安装SDK Mananger

  我们可以从 https://developer.nvidia.com/sdk-manager 下载SDK Manager安装包(如下图),这里推荐下载第一种“.deb”会比较简单,下面的“SDK Mananger User Guide”链接是这个软件的使用手册。

  下载好安装包之后,在Ubuntu系统里执行以下指令:

  $ sudo apt install ./sdkmanager_[version]-[build#]_amd64.deb
  例如:

  $ sudo apt install ./sdkmanager_1.9.2-10889_amd64.deb
  安装好之后直接在命令终端执行“sdkmanager”就会启动以下的启动画面:

  NVIDIA要求使用者必须先拥有开发者账户,如果还没有的话就需要先申请一个。网上许多关于这个账号的申请教程,因此在这里就不多赘述。

  让开发套件进入刷机(Flash)模式
  这是使用SDK Mananger执行刷机时,所必须执行的步骤。在Jetson Nano(含2GB)、NX与Orin Nano等系列开发套件中,在“背部风扇下方”都有一组针脚(如下图左),其中右数第3/4针脚分别为“FC REC”与“GND”功能(如下图右上方),在关闭电源的状态下,使用一般条线将这两个脚位进行“短接”(如下图右下方)。

  接下来用一根支持数据传输功能的USB/Type-C线,将Ubuntu主机上与Orin Nano开发套件进行连接。一切就绪之后,再为开发套件接上电源,确认电源灯是亮着。
  如果上述步骤都正常执行的话,就会在SDK Mananger画面上弹出下图中间的选项,表示系统已经侦测到Orin Nano设备。

  注意:这里显示检测到的是“Jetson Orin Nano 8GB”,而不是“Jetson Orin Nano [8GB developer kit version]”,我们必须选择这里所检测到的型号,直接点击“OK”键,而不要去更改型号选项,否则后面会导致失败!

  用SDK Mananger执行系统安装

  现在就能开始进行刷机任务,进入“STEP 1”之后,建议将“Host Machine”的安装选项取消掉(如下图),因为这部分会在Ubuntu主机上安装CUDA开发环境,除非您的系统上有装上NVIIDA的GPU卡,否则这些安装是没有任何作用,还会浪费很多时间去下载安装包与安装环境。

  至于第三行“TARGET OPERATING SYSTEM”部分,就选择您想安装的版本,这里会以“最新版本”作为预设值,如果想要安装其他版本,就点击右下角“...”按钮,会出现下拉选项提供选择。

  选择完毕之后,点击右下角“CONTINUE”黄色块按钮,进入下一级选项(如下图),

  这个步骤只要点选最下方“I accept the terms .....”前面方框,然后右下角“CONTINUE”按钮就会变成黄色可点击的选项,点击之后就会开始下载所需要的安装包,并且在Ubuntu主机上创建刷机所需要的系统目录,这部分会花比较多的时间,初学者可以不需要了解这边步骤所生成的内容。

  继续往下执行,直到出现下面画面:

  这部分是需要细心处理的步骤,只要是以下几点:

  图上第一个箭头处,必须选择“Manual Setup - Jetson Orin Nano 8GB”;

  图下第二个箭头处,选择“NVMe”选项;

  在“New Username”框中,输入您要设定用户名;

  在“New Password”框中,输入您要设定的密码。

  全部配置完后,就能点击右下角“Flash”按键,开始为Jetson Orin Nano安装操作系统与基础环境,全部大约10分钟时间,这样就完成第一阶段的操作。

  开发套件自动重启,并执行系统配置

  完成第一阶段的操作之后,Orin Nano开发套件会自动重启,此时如果您为开发套件接上显示器的话,就能看到以下的开机画面。

  这个开机画面会持续静止大约6分钟左右的时间,因为系统还要写入以下开机的设定,因此不要误以为系统出现死机状况。

  等到正常开机之后,接下去系统会自动执行系统配置的步骤,这里会将“全部空间”都配置给系统,并将前面输入的“New Username”与“New Password”配置给系统,然后在SDK Manager端就会开始继续安装其他的开发环境,包括CUDA、cuDNN、TensorRT、OpenCV等等,这部分需要大约30分钟时间。

  整个安装完毕之后,请记得将最开始用来短接“FC REC”与“GND”的跳线取下,否则可能会影响后续的正常运行。


http://www.niftyadmin.cn/n/5038262.html

相关文章

现今主流物联网无线通信技术分类详解

无线技术正在迅速发展,并在人们的生活中发挥越来越大的作用。 而随着无线应用的增长,各种技术和设备也会越来越多,也越来越依赖于无线通信技术。 本文盘点下物联网中无线通信主要的技术。 一、无线通信技术的几大主流分类 1.美国通信委员会…

如何使用docker快速部署MinDoc文档系统

MinDoc是非常优秀的知识分享系统,但是很多刚接触的人会一脸懵逼,而且官方文档写的也并不清晰,所以和大家分享一下快速部署MinDoc的方法。 首先docker环境先自行安装好,这里不再赘述。 拉取docker镜像: docker pull …

RocketMQ消息的分类

一、普通消息 1 消息发送分类 Producer对于消息的发送方式也有多种选择,不同的方式会产生不同的系统效果。 同步发送消息 同步发送消息是指,Producer发出⼀条消息后,会在收到MQ返回的ACK之后才发下⼀条消息。该方式的消息可靠性最高&#xff…

TS编译器选项​compilerOptions指定编译后文件所在目录

compilerOptions是TS的编译器选项,主要在tsconfig.json文件中用于对ts编译为js文件时进行配置 "compilerOptions" : { 配置项 } 在tsconfig.json中编写如下代码: {// compilerOptions 编译器选项"compilerOptions": {// outDir 用于…

java Spring Boot验证码美化,白色背景 随机四个数 每个字随机颜色

我前文 Spring Boot2.7生成用于登录的图片验证码讲述了生成验证码的方法 但是这样生成验证码 非常难看 比较说 验证码是要展示到web程序中的 这样让用户看着 属实不太好 我们可以将接口改成 GetMapping(value "/captcha", produces MediaType.IMAGE_PNG_VALUE) …

Learn Prompt-Prompt 高级技巧:AutoGPT

AutoGPT 是一个由Toran Richards创建的流行开源项目。它利用GPT4作为大脑,结合langchain的链接思想,连接各种工具和互联网资源,来完成人类给予的任务。您只需要设定一个目标,AutoGPT就会自主规划并逐步执行任务。如果遇到问题&…

RabbitMQ学习总结(11)—— RabbitMQ 核心概念与架构

MQ 技术概述 什么是 MQ MQ(message queue),从字面意思上看,本质是个队列,FIFO 先入先出,只不过队列中存放的内容是 message 而已,还是一种跨进程的通信机制,用于上下游传递消息。在互联网架构中,MQ 是一种非常常见的上下游 “逻辑解耦+物理解耦” 的消息通信服务。使用…

C# PaddleDetection 安全帽检测

效果 项目 代码 using OpenCvSharp; using OpenCvSharp.Extensions; using Sdcb.PaddleDetection; using Sdcb.PaddleInference; using System; using System.Drawing; using System.Text; using System.Windows.Forms; using YamlDotNet; using static System.Windows.Forms…