在NVIDIA Jetson TX2上源码编译并使用Pytorch

前言

TX2作为一个嵌入式平台的深度学习端,具备不错的GPU性能,我们可以发现TX2的GPU的计算能力是6.2。这意味着TX2对半精度运算有着良好的支持,我们完全可以在桌面端训练好模型,然后移植到TX2上利用半精度运行进行推理,这样可以达到生产落地的效果。

就算本篇文章主要展示了如何在TX2中源码编译Pytorch-1.0

首先我们需要一个相对纯净的jetpack系统,3.2-3.3版本(最新的4.1.1也可以)都可以,所以我们最好将TX2的系统重新刷一遍,以免造成一些其他不兼容的错误。

刷系统:从NVIDIA官网下载TX2的系统包:https://developer.nvidia.com/embedded/jetpack

步骤

接下来我们严格按照步骤来进行Pytorch的源码安装。

在JetPack-3.2系统中,我们的python一般有两个版本,python命令对应着python2.7。而python3命令对应着python3.5。这里我们使用python3作为编译环境,大家一定要分清楚这两个不同python版本的命令集,否则会造成编译错误。

可以通过which python3来查看当前的python3.5的执行环境。

依赖件

首先安装依赖件:

注意我们使用的命令pip3对应着python3,如果你不清楚系统中的pip和python的绑定信息,采用pip --version查看当前命令在哪个python中,例如我这边则是:

pip3 --version
pip3 9.0.1 from path/to/lib/python3.5/site-packages/pip (python 3.5)

总之我们要使用对应python3的pip命令,首先安装pip3,然后在python3环境中安装一些必要组件。

sudo apt install libopenblas-dev libatlas-dev liblapack-dev
sudo apt install liblapacke-dev checkinstall # For OpenCV
sudo apt-get install python3-pip

pip3 install --upgrade pip3==9.0.1
sudo apt-get install python3-dev

sudo pip3 install numpy scipy # 这个花费的时间略长,20分钟到30分钟左右
sudo pip3 install pyyaml
sudo pip3 install scikit-build
sudo apt-get -y install cmake
sudo apt install libffi-dev
sudo pip3 install cffi

安装完之后,我们添加cudnn的lib和include路径,为什么要执行这一步,因为我们在刷好机后,cuda和cudnn也已经安装好,但是JetPack系统中的cudnn路径和我们一般ubuntu系统中的路径略有不同(为什么不同看这里:https://oldpan.me/archives/pytorch-gpu-ubuntu-nvidia-cuda90),这时需要我们将cudnn的路径添加到环境变量中并激活:

sudo gedit ~/.bashrc
export CUDNN_LIB_DIR=/usr/lib/aarch64-linux-gnu
export CUDNN_INCLUDE_DIR=/usr/include
source ~/.bashrc

下载Pytorch源码包

我们从github上直接拷贝最新的Pytorch源码包,然后利用pip3安装好所有必备的库,并对第三方库进行更新。

git clone http://github.com/pytorch/pytorch
cd pytorch
sudo pip3 install -U setuptools
sudo pip3 install -r requirements.txt
git submodule update --init --recursive

编译

在编译之前,我们先开启TX2的最大功率模式,这样可以使我们的编译速度稍微快一些:

sudo nvpmodel -m 0         # 切换工作模式到最大
sudo  ~/jetson_clocks.sh   # 强制开启风扇最大转速 

这样风扇就开始呼呼转了,我们开始编译吧。

ãå¨NVIDIA Jetson TX2ä¸æºç ç¼è¯å¹¶ä½¿ç¨Pytorchã

进入Pytorch源码目录后,我们首先执行下面这一句首先编译Pytorch的开发组件:

python3 setup.py build_deps

漫长的编译后(2小时),我们继续执行以下的命令:

NO_SYSTEM_NCCL=1 DEBUG=1 sudo python3 setup.py build develop

ãå¨NVIDIA Jetson TX2ä¸æºç ç¼è¯å¹¶ä½¿ç¨Pytorchã

同样是漫长的编译(2小时),等待后不出意外就编译成功了!

后续操作

后续我们继续安装Pytorch推荐搭配的组件torchvision。

sudo apt clean
sudo apt-get install libjpeg-dev zlib1g-dev

git clone https://github.com/python-pillow/Pillow.git
cd Pillow/
sudo python3 setup.py install
sudo pip3 install pandas # ~20-30 min
sudo pip3 install Cython
sudo pip3 install scikit-image

sudo pip3 --no-cache-dir install torchvision

测试Pytorch是否安装成功

编译完成之后,如果安装成功,会出现下面的信息:

ãå¨NVIDIA Jetson TX2ä¸æºç ç¼è¯å¹¶ä½¿ç¨Pytorchã

需要注意的点

在JetPack系统中,我们不论是执行编译还是执行代码,都必须加上sudo,否则会出现编译失败或者cuda error的情况。

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
### 回答1: 要在Jetson TX2上安装PyTorch,需要先安装JetPack软件套件,并在Jetson TX2上安装Python。然后,可以通过SSH连接到Jetson TX2,并使用pip安装PyTorch包。需要注意的是,Jetson TX2上可能需要编译PyTorch代码,因此可能需要安装其他依赖项和工具链。建议参考官方文档和社区资进行安装。 ### 回答2: Jetson TX2是一款较为高端的嵌入式计算机,可以支持人工智能相关的应用。而PyTorch是一种比较流行的深度学习框架,可以用于创建和训练自己的人工智能模型。在Jetson TX2上安装PyTorch,可以让我们更加方便地进行深度学习的研究和应用。以下是Jetson TX2安装PyTorch的步骤: 1.首先,确保您的Jetson TX2已经安装了Nvidia Jetpack,因为这是PyTorch所依赖的一些组件(例如CUDA和cuDNN)所需的基础环境。 2.然后,建议您使用anaconda将PyTorch安装在Jetson TX2上。anaconda是一种用于创建Python虚拟环境的工具,可以避免在Jetson TX2上出现由于不同版本Python包之间的冲突而导致的问题。 3.下载并安装anaconda,前往官方网站(https://www.anaconda.com/distribution/)下载适用于Jetson TX2的合适版本。安装完成后,运行以下命令创建一个名为“tfenv”(可以自行更改名称)的Python虚拟环境: conda create -n tfenv python=3.7 4.激活tfenv环境,运行以下命令: conda activate tfenv 5.接下来,安装PyTorch。由于Jetson TX2上的CPU和GPU规格不同,因此我们需要为CUDA和cuDNN选择正确的版本。当前最新的PyTorch版本是1.9.0,假设您已经安装了与Jetpack 4.4对应的CUDA和cuDNN版本,可以通过以下命令安装PyTorch: pip3 install torch==1.9.0+cu102 torchvision==0.10.0+cu102 -f https://download.pytorch.org/whl/cu102/torch_stable.html 6.测试PyTorch是否安装成功。可以使用以下命令打开Python交互环境: python 然后输入以下Python代码: import torch print(torch.__version__) 如果输出1.9.0,则说明PyTorch已经成功地安装并可以在Jetson TX2上使用。 总之,Jetson TX2安装PyTorch需要在安装anaconda、环境设置、选择正确的PyTorch版本等方面进行详细的步骤,需要注意这些细节,确保正确安装和配置。 ### 回答3: Jetson TX2 是 NVIDIA 推出的一款用于深度学习的嵌入式系统平台,它的灵活性和性能使其成为许多机器学习和人工智能项目的首选。PyTorch 是由 Facebook 开发的一种基于 Python 的机器学习库,它具有易用性和高效性,因此很受欢迎。在本文中,将介绍如何在 Jetson TX2 上安装 PyTorch。 首先,确保您的 Jetson TX2 已连接到网络。然后,您需要安装正确的 Python 版本,因为 PyTorch 仅支持特定的版本。可以从 Jetson TX2 的终端窗口输入以下命令来确认您的 Python 版本: ```bash python -V ``` 如果输出如下内容,表示您已经安装了 Python : ```bash Python 3.6.9 ``` 接下来,使用以下命令,在 Jetson TX2 上安装 PyTorch: ```bash sudo apt-get update sudo apt-get install python3-pip libopenblas-base libopenmpi-dev sudo pip3 install http://nvidia.westus2.cloudapp.azure.com/bsp/pytorch-1.7.0 ``` 上面的命令将使用 pip3 安装 PyTorch 和相关依赖项。安装完成后,您可以使用以下命令验证 PyTorch 是否已成功安装: ```bash python3 -c "import torch; print(torch.cuda.is_available())" ``` 如果输出 “True”,则表示你已经成功安装了 PyTorch。 安装完成后,您可以开始使用 PyTorch 训练深度学习模型。Jetson TX2 的高性能和灵活性,使它成为深度学习模型的理想平台。在使用 PyTorch 训练模型时,建议在 Jetson TX2 上使用 GPU 进行加速,这将显著提高训练速度。 总之,Jetson TX2 上安装 PyTorch 很简单,只需几个命令就可以轻松完成。在安装完成后,您将进入一个完全准备好使用 PyTorch 训练深度学习模型的状态。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值