Jetson Nano安装pytorch 基于torch1.6和torchvision0.7

    科技2022-07-10  138

    需要注意的是,博主使用的是win10主机,通过局域网连接的jetson nano, 其中jetson nano的预制CUDA版本为10.2 Jetpack 4.1.1

    分别执行以下命令,即可查看自己的jetson nano 预搭载的CUDA版本

    sudo pip3 install jetson-stats

    sudo jtop

    基础安装教程

    需要注意的是,博主使用的是win10主机,通过局域网连接的jetson nano, 其中jetson nano的预制CUDA版本为10.2 Jetpack 4.1.1分别执行以下命令,即可查看自己的jetson nano 预搭载的CUDA版本`sudo pip3 install jetson-stats``sudo jtop` 1.基础连接1、基础部件安装2、远程桌面连接可以参考这篇博文,使用Xshell和Xftp,对于没有屏幕的用户比较友好,另外,jetson nano开启屏幕连接会占用一定量的CPU和GPU资源,远程连接可节省之。 `不过,需要提醒的是,博主下面的操作,虽然都是在命令行完成的,但是博主连接了屏幕,所以如果直接是远程桌面连接,有一定可能性出现博文中未出现的情况` 2.环境配置1.关于CUDA的环境变量导入保存后退出,执行 `source ~/.bashrc`,使得环境变量生效在命令行输入 nvcc -V 如果正常输出,说明CUDA路径配置成功,对于CUDA10.0版本,方法或许与博文有出入,请自行百度之。2.安装pytorch torch1.6和torchvison0.7.0安装 torch1.6 在命令行执行随后安装torchvision 0.7.0

    1.基础连接

    1、基础部件安装

    基础的系统烧录等可以参考这篇博文 Nvidia Jetson Nano入门与使用

    2、远程桌面连接

    可以参考这篇博文,使用Xshell和Xftp,对于没有屏幕的用户比较友好,另外,jetson nano开启屏幕连接会占用一定量的CPU和GPU资源,远程连接可节省之。

    另外,连接上Xftp后可以使用其实现文件传输,在jetson nano不便于下载某些文件时,可以通过主机下载后再传过去

    下面这篇博文对于Xshell使用介绍非常详细,这里不再赘述,同样的,Putty也可以连接,方法更为简单,但功能略微弱于 Xshell 可自行百度之。 https://blog.csdn.net/u013617229/article/details/89715667

    不过,需要提醒的是,博主下面的操作,虽然都是在命令行完成的,但是博主连接了屏幕,所以如果直接是远程桌面连接,有一定可能性出现博文中未出现的情况

    2.环境配置

    1.关于CUDA的环境变量导入

    jetson nano是原装了CUDA的,但是需要用户导入环境变量(导入相关的路径)才可以使用,只有环境变量导入成功后,方可在命令行使用 nvcc -V 在命令行输入 sudo gedit ~/.bashrc (类似于文本编辑器,需要连接显示器,如果没有显示器,需要自行百度vim的方法来添加环境变量) 在最后添加这三行 (注意,输入变量时,是usr,不是user,linux小白当时差点没注意这点细节)

    export CUDA_HOME=$CUDA_HOME:/usr/local/cuda export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH export PATH=/usr/local/cuda/bin:$PATH

    保存后退出,执行 source ~/.bashrc,使得环境变量生效

    在命令行输入 nvcc -V 如果正常输出,说明CUDA路径配置成功,对于CUDA10.0版本,方法或许与博文有出入,请自行百度之。

    2.安装pytorch torch1.6和torchvison0.7.0

    下述步骤安装的是 PyTorch v1.6 + torchvision v0.7.0-rc2 需要注意的是,博主的jetson nano搭载的是CUDA10.2版本,因此强烈建议使用1.6版本的pytorch,其他版本的pytoch安装后会出现各种问题 详情可参考这位博主的经历 同时本博主也是参考这位博主的方法安装的

    前往nvidia官网下载pytorch,Pytorch在arm64架构上需要自己编译安装。

    Nvidia提供了在Nano上的预编译的pytorch安装包,直接下载需要科学上网,因此建议将下载链接复制到迅雷以便加速下载。

    同时,这里提供了pytorch 1.6.0的已经编译好的wheel安装包,下载后重命名为torch-1.6.0-cp36-cp36m-linux_aarch64.whl,并将文件放在用户目录下,这样可以直接打开。 链接:https://pan.baidu.com/s/1bjMHIg1KDJ0HMB37HB_DzQ 提取码:c3z2 (此处的资源连接转载自博文)

    安装 torch1.6 在命令行执行

    sudo apt-get install python3-pip libopenblas-base libopenmpi-dev pip3 install Cython pip3 install torch-1.6.0-cp36-cp36m-linux_aarch64.whl

    由于我们安装的是pytorch1.6因此,我们只能知用torchvisionv0.7.0,但是去官方找,最多只到0.6.0

    随后安装torchvision 0.7.0

    sudo apt-get install libjpeg-dev zlib1g-dev git clone --branch v0.7.0 https://gitee.com/zero-one-game/vision torchvision # 鉴于国内网络环境,博主提供gitee码云加速下载,直接使用github会因出现网络问题而无法进行 #这行命令是将源代码下载到了用户目录下的torchvision,如果torchvision已经存在,需要删除,如果提示permission denied #命令行使用sudo su 进入管理员模式, 执行 rm -r torchvision ,或者也可以自行查找更安全的删除方法 cd torchvision #进入用户目录下的torchvision,执行源代码编译工作,需要一定的时间,大概十多分钟 sudo python3 setup.py install cd ../ # attempting to load torchvision from build dir will result in import error pip3 install 'pillow<7' # always needed for Python 2.7, not needed torchvision v0.5.0+ with Python 3.6

    更多详细的安装步骤,可以参考以下博文

    https://www.pianshen.com/article/41791665147/ https://www.pythonf.cn/read/135121 https://www.cnblogs.com/cumtchw/p/13273753.html https://www.cnblogs.com/cumtchw/p/13279051.html

    编译并安装完成后,命令行输入python3,启动python3.6.9,进入交互式命令行

    >>> import torch >>> print(torch.__version__) # 输出 1.6.0 >>> print('CUDA available: ' + str(torch.cuda.is_available())) >>> print('cuDNN version: ' + str(torch.backends.cudnn.version())) >>> a = torch.cuda.FloatTensor(2).zero_() >>> print('Tensor a = ' + str(a)) >>> b = torch.randn(2).cuda() >>> print('Tensor b = ' + str(b)) >>> c = a + b >>> print('Tensor c = ' + str(c)) >>>> import torchvision >>> print(torchvision.__version__) # 输出 0.7.0

    3.安装虚拟环境,隔离真实环境 参考博文,后续将详细补充相关用法 https://www.cnblogs.com/kekeoutlook/p/13511212.html

    linux下,把文本从其他GUI程序复制到终端用 ctrl+shift+v

    4.好像有朋友遇到了git出问题,下载不了,我这里直接给出前面的torchvision0.7.0的zip包,有需要的自取,蓝奏分享链接

    Processed: 0.025, SQL: 8