nvidia jetson TX2配置caffe

xiaoxiao2021-02-27  301

   英伟达在2017年3月发布了全新嵌入式计算平台TX2,从网上的介绍来看,TX2延续了小体积、高度集成的特性,整合了 4 核 ARM A57 CPU、Pascal 架构 GPU(16 纳米工艺)、最高 8G 内存、32G 固态存储器等组件。标准功耗为 7.5W。另外,TX2 也可以将功率提高到 15W,从而提升计算能力。

   看到如此诱人的配置,笔者入手了一块TX2,见下图

   TX2自带的系统为Ubuntu16.04,笔者迫不及待地开始在TX2上配置caffe,下面记录了笔者的配置过程。

   配置caffe一共分为两大步骤,第一大步是进行JetPack3.0安装,这一步由笔者的同事luval完成,在此对他的贡献表示感谢。JetPack3.0中包含了cuda8.0,是caffe运行必不可少的组件,首先附上JetPack的下载链接https://developer.nvidia.com/embedded/jetpack点击打开链接,在下载时可能需要登录nvidia账户。

然后再附上JetPack的安装指南http://docs.nvidia.com/jetpack-l4t/index.html#developertools/mobile/jetpack/l4t/3.0/jetpack_l4t_install.htm点击打开链接

请大家安装的时候一定要跟随官网的安装指南,下面记录一下JetPack3.0的安装过程:

首先准备一台宿主机,luval用的是一个ubuntu14.04的虚拟机,将下载的JetPack-L4T-3.0-Linux-x64.run放到相应的文件夹下,并在文件夹下执行:

sudo ./JetPack-L4T-3.0-linux-x64.run

在进入图形界面之后,一路next到如下界面:

如果需要刷机的话,就勾选蓝框中的东西,如果不需要刷机,只需要安装JetPack组件的话,可以在下面选择,上图显示了luval的选择,然后再经过以下两步:

到了下面这一步:

   此时TX2应该是开机状态,而且宿主机应该与TX2在同一个网络里luval的做法是将TX2与宿主机分别用网线连接到同一个路由器。IP行填TX2的ip地址,user name行填TX2的登录用户名,password填TX2的对应的账户密码(TX2自带nvidia/nvidia),点next,如果IP和用户名以及密码正确,进入到安装功能包的界面,这是自动进行的,保持网络连接即可,直到完成。

在程序安装完毕后,在TX2上设置环境变量

sudo gedit /etc/bash.bashrc 在文件的末尾加入如下 export PATH=/usr/local/cuda-8.0/bin:$PATH export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH 然后cuda就配置完毕了,运行

nvcc -V

查看一下cuda版本

那么,我们再查看一下其他安装或者自带组件的版本

   然后我们开始进行第二大步,配置caffe:

首先安装一般依赖项

sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler

sudo apt-get install --no-install-recommends libboost-all-dev 再安装BLAS依赖项 sudo apt-get install libatlas-base-dev 然后是python和其余依赖项,安装python及其头文件 sudo apt-get install python sudo apt-get install python-dev 安装python的其他依赖 sudo apt-get install python-numpy sudo apt-get install ipython sudo apt-get install ipython-notebook sudo apt-get install python-sklearn sudo apt-get install python-skimage sudo apt-get install python-protobuf 然后是谷歌glog和gflags和lmdb依赖项 sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev 接着安装git,并且下载代码 sudo apt-get install git git clone https://github.com/BVLC/caffe.git 然后进入到源码目录 cd caffe 编译Caffe cp Makefile.config.example Makefile.config 需要使用cuDNN的朋友可以将Makefile.config中USE_CUDNN := 1这一行之前的井号注释去掉, 同时,为了匹配cuda8.0的计算能力,请把Makefile.config中CUDA_ARCH中的前两行去掉,如下图所示(保留也行,编译的时候会弹出警告) 然后 make all -j8 值得注意的是,笔者在第一次编译的时候遇到了如下问题: ./include/caffe/util/hdf5.hpp:6:18: fatal error: hdf5.h: No such file or directory 解决方法笔者参阅了http://blog.csdn.net/hongye000000/article/details/51043913点击打开链接,在链接博客中,解决方法如下: 在Makefile.config文件中,添加 /usr/include/hdf5/serial/ 到 INCLUDE_DIRS,也就是把下面第一行代码改为第二行代码。 INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/ 在Makefile文件中,把 hdf5_hl 和hdf5修改为hdf5_serial_hl 和 hdf5_serial,也就是把下面第一行代码改为第二行代码。 LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5 LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial 上述解决方法笔者亲测有效,感谢博主,然后 make clean make all -j8 caffe编译成功。 written by jiong 兴趣是最好的老师

转载请注明原文地址: https://www.6miu.com/read-4884.html

最新回复(0)