新手要在NVIDIA Jetson上进行开发,必须先学会刷机。NVIDIA Jetson刷机是指为NVIDIA Jetson系列嵌入式开发板刷写(或更新)其操作系统和相关软件的过程。Jetson系列开发板是NVIDIA推出的专为AI计算设计的平台,广泛应用于机器学习、计算机视觉、机器人等领域。刷机是这些开发板使用过程中常见的操作,主要用于安装或更新操作系统、CUDA、cuDNN、TensorRT等关键软件,以满足不同的开发需求。
我们以在Jetson Orin NANO开发套件为例,告诉大家刷机流程。
Jetson Orin NANO开发套件的开箱文在前面文章有提到。
对于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”的连接,其他环节都是一样的。
现在就开始以下的步骤:
我们可以从 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_2.1.0-10889_amd64.deb
安装好之后直接在命令终端执行“sdkmanager”就会启动以下的启动画面:
NVIDIA要求使用者必须先拥有开发者账户,如果还没有的话就需要先申请一个。网上许多关于这个账号的申请教程,因此在这里就不多赘述。
接下来用一根支持数据传输功能的USB/Type-C线,将Ubuntu主机上与Orin Nano开发套件进行连接。一切就绪之后,再为开发套件接上电源,确认电源灯是亮着。 如果上述步骤都正常执行的话,就会在SDK Mananger画面上弹出下图中间的选项,表示系统已经侦测到Orin Nano设备。
注意:这里显示检测到的是“Jetson Orin Nano 8GB”,而不是“Jetson Orin Nano [8GB developer kit version]”,我们必须选择这里所检测到的型号,直接点击“OK”键,而不要去更改型号选项,否则后面会导致失败!
现在就能开始进行刷机任务,进入“STEP 1”之后,建议将“Host Machine”的安装选项取消掉(如下图),因为这部分会在Ubuntu主机上安装CUDA开发环境,除非您的系统上有装上NVIIDA的GPU卡,否则这些安装是没有任何作用,还会浪费很多时间去下载安装包与安装环境。
至于第三行“TARGET OPERATING SYSTEM”部分,就选择您想安装的版本,这里会以“最新版本”作为预设值,如果想要安装其他版本,就点击右下角“...”按钮,会出现下拉选项提供选择。
选择完毕之后,点击右下角“CONTINUE”黄色块按钮,进入下一级选项(如下图),
这个步骤只要点选最下方“I accept the terms .....”前面方框,然后右下角“CONTINUE”按钮就会变成黄色可点击的选项,点击之后就会开始下载所需要的安装包,并且在Ubuntu主机上创建刷机所需要的系统目录,这部分会花比较多的时间,初学者可以不需要了解这边步骤所生成的内容。
继续往下执行,直到出现下面画面:
这部分是需要细心处理的步骤,只要是以下几点:
全部配置完后,就能点击右下角“Flash”按键,开始为Jetson Orin Nano安装操作系统与基础环境,全部大约10分钟时间,这样就完成第一阶段的操作。
完成第一阶段的操作之后,Orin Nano开发套件会自动重启,此时如果您为开发套件接上显示器的话,就能看到以下的开机画面。
这个开机画面会持续静止大约6分钟左右的时间,因为系统还要写入以下开机的设定,因此不要误以为系统出现死机状况。
等到正常开机之后,接下去系统会自动执行系统配置的步骤,这里会将“全部空间”都配置给系统,并将前面输入的“New Username”与“New Password”配置给系统,然后在SDK Manager端就会开始继续安装其他的开发环境,包括CUDA、cuDNN、TensorRT、OpenCV等等,这部分需要大约30分钟时间。
整个安装完毕之后,请记得将最开始用来短接“FC REC”与“GND”的跳线取下,否则可能会影响后续的正常运行。【完】