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

需要注意的是,博主使用的是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 可自行百度之。
Jetson Nano配置与使用(4)windows环境下使用Xshell6登录Jetson Nano_Damon0626的博客-CSDN博客_jetson nano windows

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

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
  • 1
  • 2
  • 3

保存后退出,执行 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,并将文件放在用户目录下,这样可以直接打开。
链接:百度网盘 请输入提取码
提取码: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
  • 1
  • 2
  • 3

由于我们安装的是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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

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

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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

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

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

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

任何程序错误,以及技术疑问或需要解答的,请添加

Jetson Nano安装pytorch 基于torch1.6和torchvision0.7_第1张图片

 

你可能感兴趣的:(pytorch,深度学习,python)