在Nvidia TX2(arm)上搭建YOLOv4环境
本文最后更新于:2022年7月30日 下午
总结
结合之前的经验,总共耗时两天。由于我的TX2系统为3.x版本,没有自带cuda,要安装非常麻烦,所以进行刷机。如果自带cuda请略过这一部。
主要问题集中在Jetpack系统的刷入以及Pytorch cuda加速上。
安装Jetpack
正常流程
按照网上的教程:
- 注册Nvidia账号
- 安装VMware虚拟机安装Ubuntu系统,开启桥接模式连接网络,安装sdkmanger。
- 按照流程打开sdkmanger下载安装。
- 中途提示安装,按照晚上的教程进行恢复模式。
- 刷入后,需要先安装ssh工具,请自行查阅。
- 安装ssh后,在host端继续安装cuda等工具。
- 成功安装。
注意事项
- 如果usb和tx2的corp无法显示在虚拟机中,请打开usb3.0兼容。
- sdkmanger登录以及下载几乎都需要fq,请打开sdkmanger的内置proxy设置代理(找到宿主机host的ip,以及ssr开放的端口,使用http和https)。
- 线材用盒子自带的usb即可。
- 空间需要50g以上。
安装Pytorch以及Torchvision
环境配置
最好是用Miniforge或者其他Conda环境来构建虚拟环境。
开始安装
踩过许多坑,最终发现以下配合最为简洁。
Pytorch下载地址,最好使用该地址下Nvidia官方编译好的带cuda的Pytorch,否则不能开启cuda加速。
Torchvision下载地址前者Nvidia官方只提供了本地编译torchvision,我实测编译失败且慢,不使用。(想要编译0.9.0版本的除外,见注意事项3)
注意事项
- 需要注意的Jetpack自带的cuda10.2的话,可以使用的pytorch版本为1.6.0及以上
- 如果遇到mish-cuda找不到,请
pip install git+https://github.com/thomasbrandon/mish-cuda/
- 实测Pytorch1.8.0+torchvision0.9.0以下的版本在使用torchvision的nms算子的时候会报错,无解。
- 如果出现核心已转储的问题考虑安装
numpy==1.19.4
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!