如何在Jetson TK1上安装Caffe深度学习库

        Caffe的创造者 Yangqing Jia,最近花了些时间在NVIDIA Jetson 开发板上运行caffe框架。Jetson TK1 有192个CUDA核,是非常适用于深度学习这种计算任务的。未来,如果我们想在移动设备上做一些事情的话,Jetson是一个不错的选择,而且它预装Ubuntu操作系统,因此也是非常易于开发的。 

       Caffe内置了Alexnet模式,这是Imagenet-winning 架构的一个版本,可以识别1000个不同种类的物体。用这个作为一种benchmark,Jetson可以在34ms里分析一个图像。

      接下来,介绍如何在Jetson 上安装并运行Caffe.   

安装

       你从盒子里拿到Jetson的第一步是登录。你可以接一个显示器和键盘,但我倾向于你将它跟一个本地路由连接,然后ssh访问。  elinux.org/Jetson/Remote_Access 上有具体的步骤(不明白的地方可以在我们的QQ技术群里询问) ,这时候在你的本地网络上会出现 tegra-ubuntu.local , username 是ubuntu: ssh ubuntu@tegra-ubuntu.local

       默认密码是 ubuntu,接下来我们需要安装NVIDIA的驱动,然后重启:  sudo NVIDIA-INSTALLER/installer.sh sudo shutdown -r now        一旦开发板重启后,你可以登录进去,然后继续安装Caffe所需的环境:  ssh ubuntu@tegra-ubuntu.local sudo add-apt-repository universe sudo apt-get update sudo apt-get install libprotobuf-dev protobuf-compiler gfortran \ libboost-dev cmake libleveldb-dev libsnappy-dev \ libboost-thread-dev libboost-system-dev \ libatlas-base-dev libhdf5-serial-dev libgflags-dev \ libgoogle-glog-dev liblmdb-dev gcc-4.7 g++-4.7

       你需要安装 Cuda SDK 以建立和运行GPU程序(CUDA环境安装步骤都已经放在QQ技术群里,安装过程有任何问题,请随时在群里提出)。

        如果一切顺利,你运行‘nvcc -V可以看到一个完整的编译器版本信息。这个时候你需要安装Tegra版本的OpenCV.  (安装步骤同样在QQ群里找)

       我们需要下载并安装Caffe

sudo apt-get install -y git git clone https://github.com/BVLC/caffe.git cd caffe && git checkout dev cp Makefile.config.example Makefile.config sed -i "s/# CUSTOM_CXX := g++/CUSTOM_CXX := g++-4.7/" Makefile.config

我们必须使用gcc 4.7版本,因为默认4.8会有一些问题。你应该可以完成整个安装。

make -j 8 all

        一旦完成这可,你可以运行一下Caffe的测试包来检查是否安装成功。这个可能需要花费一些时间,但希望一切顺利。 

make -j 8 runtest

       最后,你可以运行一下Caffe的基准代码来检测一下性能。 

build/tools/caffe time --model=models/bvlc_alexnet/deploy.prototxt --gpu=0

       这个可能需要花费30秒,输出一组统计数字。它运行50迭代的识别pipleline。每个分析10个不同的输入图像。因此看一下“‘Average Forward pass”时间,然后除以10就可以得到每个识别时间。我的结果是337.86ms,所以每个图像大概是34ms。你也可以把-gpu=0的标志去掉,看一下CPU的结果。在我这里看是大概585ms,所以你看CUDA还是起到作用了。 

原文发布于微信公众号 - 吉浦迅科技(gpusolution)

原文发表时间:2014-11-16

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏祝威廉

SQL脚本实现算法模型的训练,预测

搜索团队正好需要计算一些词汇的相似性,这个用Word2Vec是很方便的。于是我立马安排算法团队帮个忙弄下。但回头想想,因为这么点事,打断了算法手头的工作,这简直...

13720
来自专栏人工智能头条

图解TensorFlow架构与设计

1.1K60
来自专栏吉浦迅科技

在Jetson TX2上跑个人脸识别小程序

不少跟我们买Jetson TX2开发板的用户在我们指导下成功刷完机后,都会迫不及待地想赶紧跑个代码了:

45930
来自专栏AI研习社

深度学习界的 “吃鸡挂”——目标检测 SSD 实验

“卧槽,又被 LYB 干了!” 背后传来一声哀嚎。 哈哈,看来,沉迷吃鸡的室友又被戒网瘾了。作为一个充满着正义的 LYB 的游戏,这人不长点眼力还真的不行啊。不...

52550
来自专栏ATYUN订阅号

用香蕉也能玩电脑游戏—Tensorflow对象检测接口的简单应用

Tensorflow最近发布了用于对象检测的对象检测接口(Object Detection API),能够定位和识别图像中的对象。它能够快速检测图像允许从视频帧...

37240
来自专栏AI研习社

谷歌发布 TensorFlow 1.5,全面支持动态图机制和 TensorFlow Lite

AI 研习社消息,日前,谷歌发布 TensorFlow 1.5,TensorFlow 又一次迎来更新。 在此前的版本中,TensorFlow 迎来三大重大变化:...

31140
来自专栏CSDN技术头条

机器学习算法线上部署方法

我们经常会碰到一个问题:用了复杂的GBDT或者xgboost大大提升了模型效果,可是在上线的时候又犯难了,工程师说这个模型太复杂了,我没法上线,满足不了工程的要...

757100
来自专栏吉浦迅科技

DAY89:阅读Unified Memory Programming

我们正带领大家开始阅读英文的《CUDA C Programming Guide》,今天是第89天,我们正在讲解Unified Memory Programmin...

20730
来自专栏机器之心

开源 | 伯克利AI分布式框架Ray,兼容TensorFlow、PyTorch与MXNet

46990
来自专栏PHP实战技术

手把手教你玩转12306验证码的秘密!

12306相信对很多小伙伴都不陌生,假如问你对这个网站的印象的时候,你不是会立即想起那个坑爹的验证码,而正是这个验证码,也一时间成为小伙伴们讨论的话题,今天思梦...

29880

扫码关注云+社区

领取腾讯云代金券