ubuntu下100%成功安装torch,同时配置cuda和cudnn(不成功,则成仁)

总说

这些更新不影响主体。所有更新附加在文章最后。
第一次更新: 内容:添加一些Torch7常用库的安装,时间:2017.3.20
第二次更新:内容:某些torch库无法在线安装,转成离线安装的方法,时间:2017.3.31
第三次更新:内容:针对安装”cutorch”时出错的问题修复。时间:2017.5.11
第四次更新:内容:加入cudnn6.0的安装。 时间:2017.5.19
第五次更新:内容:解决Missing dependencies for nn:moses >= 1. 问题。 时间:2017.6.4
第六次更新: 内容:解决g++依赖包问题。时间:2017.6.25
第七次更新:内容:为什么有时候luarocks明明安装了包,但是还是出现类似Missing dependencies for nn:moses >= 1的错误??。时间:2017.6.26
第八次更新:内容:如果你的显卡是Jetson Tegra 或是Jeston TK1之类的,或是用到linux是32位的(超级不推荐)跑程序时出现Segmentation fault (core dumped)问题,一种可能可以解决的办法。。。时间:2017.8.10
第九次更新:纪念逝去的Torch7.。。时间:2017.9.8

三个前提:
1. ubuntu别太老,最好14.04或以上吧,本人采用14.04
2. cuda别太老,本人试过cuda7.5和cuda8.0。都完美运行。值得注意的是compute6.1之类的显卡必须是cuda8.0或者更高。反正往高的装没问题。
3. cudnn一定要和cuda版本对应。这是最关键的。比如我以前是普通的泰坦X,就是计算能力5.1的,随便装7.5还是8.0。但是如果是新泰坦X或是1080之类的,计算能力是6.1的, cuda最低是8.0。 版本对应指,如果cuda是7.5的,即cuda-repo-ubuntu1404-7-5-local_7.5-18_amd64,采用的cudnn就要cudnn-7.5-linux-x64-v5.0-ga.tgz,是为cuda7.5准备的cudnn5.0版本。 现在装的是cuda8.0,即cuda-repo-ubuntu1404-8-0-local_8.0.44-1_amd64.deb。采用的是
cudnn-8.0-linux-x64-v5.1.tgz。

安装与测试

用一个例子来跑,从而验证torch以及cuda和cudnn是否安装成功。
我推荐这个。
参考:链接:https://github.com/jcjohnson/neural-style/blob/master/INSTALL.md
neural-style

安装torch7

直接用torch自带脚本

git clone https://github.com/torch/distro.git ~/torch --recursive
cd ~/torch; bash install-deps;
./install.sh

这里可能会出现的问题,在 坑一中。
如果出现Missing dependencies for nn:moses >= 1. ,请参照博客的附加部分
接下来,它会提示是否吧torch加入bashrc中,有”….(yes|no)”提示,输入yes,即可。
为了保险,可以看看bashrc文件

vim ~/.bashrc

查看文档末尾是不是有类似

./home/xxx/torch/install/bin/torch-activate

上面是你torch安装的路径。
然后跟新一下环境变量。

source ~/.bashrc

然后

th

会出现
这里写图片描述
现在来说,基本的torch就安装好了!!!就是这么简单。但是你可能还想装cuda,其实也很简单。

下载配置neural style(仅仅用于测试cpu和GPU的对比程序,真心可以省略。。)

安装其他依赖库

sudo apt-get install libprotobuf-dev protobuf-compiler
luarocks install loadcaffe

下载neural style代码

cd ~/
git clone https://github.com/jcjohnson/neural-style.git
cd neural-style

安装VGG模型

sh models/download_models.sh

CPU版本的测试
th neural_style.lua -gpu -1 -print_iter 1

若出现

[libprotobuf WARNING google/protobuf/io/coded_stream.cc:505] Reading dangerously large protocol message.  If the message turns out to be larger than 1073741824 bytes, parsing will be halted for security reasons.  To increase the limit (or to disable these warnings), see CodedInputStream::SetTotalBytesLimit() in google/protobuf/io/coded_stream.h.
[libprotobuf WARNING google/protobuf/io/coded_stream.cc:78] The total number of bytes read was 
  • 10
    点赞
  • 62
    收藏
    觉得还不错? 一键收藏
  • 72
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值