(原)ubuntu上安装nvidia及torch的nccl
转载请注明出处:
http://www.cnblogs.com/darkknightzh/p/5717234.html
参考网址:
https://github.com/NVIDIA/nccl
https://github.com/ngimel/nccl.torch
1. 在https://github.com/NVIDIA/nccl中下载nvidia的nccl,并解压。
2. 将终端cd到该文件夹。
3. 输入如下命令:
make CUDA_HOME=<cuda install path> test
如:
make CUDA_HOME=</usr/local/CUDA-7.5> test
4. 等待编译完成后,将下面的加入.profile中
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/XXX/nccl-master/build/lib
5. 更新.bashrc(我这边没管用,重启后就行了)
sourch ~/.bashrc
6. 运行测试程序,成功了。
./build/test/single/all_reduce_test 10000000
说明:官网中说:To install, run make PREFIX=<install dir> install and add <instal dir>/lib to your LD_LIBRARY_PATH.
但是我没有用这一步,也可以了。。。
不指定prefix,则可执行文件默认放在/usr /local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/usr/local/etc。其它的资源文件放在/usr /local/share。你要卸载这个程序,要么在原来的make目录下用一次make uninstall(前提是make文件指定过uninstall),要么去上述目录里面把相关的文件一个个手工删掉。
指定prefix,直接删掉一个文件夹就够了。
7. 直接使用luarocks install nccl或者在https://github.com/ngimel/nccl.torch中下载工程,并cd到该文件夹,使用luarocks 进行install即可。
=============================================================================================
180320更新:
今天在使用anaconda并编译caffe时,出现crtbeginS.o:unrecognized relocation的错误。解决方法吐下:
1. 修改makefile文件
直接在Makefile最开始增加下面一句话:
CXX := /usr/bin/g++-4.9
之后在终端中直接使用官方的编译命令即可:
make CUDA_HOME=/usr/local/cuda-8.0
方法2:输入make时增加CXX标志位
https://www.cnblogs.com/sky-heaven/p/6272408.html中指出:
= 是最基本的赋值
:= 是覆盖之前的值
?= 是如果没有被赋值过就赋予等号后面的值
+= 是添加等号后面的值
因而考虑直接添加CXX的标志,如下:
make CXX=/usr/bin/g++-4.9 CUDA_HOME=/usr/local/cuda-8.0
弱弱的说一下,终端中输入下面的命令,也可以:
make CXX?=/usr/bin/g++-4.9 CUDA_HOME=/usr/local/cuda-8.0
如果要使用nccl,如https://www.cnblogs.com/haiyang21/p/7183413.html中所说,需要Makefile.config中取消注释USE_NCCL := 1,并将NCCL的include和lib路径增加到Makefile.config中,具体如下:
USE_NCCL :=
INCLUDE_DIRS += /path/nccl/build/include
LIBRARY_DIRS += /path/nccl/build/lib
但如果使用的是anaconda,可能会提示找不到某个库。。。后来决定不使用nccl了,因而没有继续深入查找原因。见谅。
安装nccl及可能碰到的问题见:
http://www.cnblogs.com/darkknightzh/p/5717234.html
http://www.cnblogs.com/darkknightzh/p/6950263.html
180320更新结束
=============================================================================================
(原)ubuntu上安装nvidia及torch的nccl的更多相关文章
- 【Linux开发】【CUDA开发】Ubuntu上安装NVIDIA显卡驱动
机型为戴尔Vostro3900 显卡型号为GTX 745 对于Nvidia显卡的驱动,如今很多Linux发行版会默认使用名为nouveau的驱动程序.Nouveau是由第三方为Nvidia开发的一 ...
- 在 Ubuntu 上安装 TensorFlow (官方文档的翻译)
本指南介绍了如何在 Ubuntu 上安装 TensorFlow.这些指令也可能对其他 Linux 变体起作用, 但是我们只在Ubuntu 14.04 或更高版本上测试了(我们只支持) 这些指令. 一 ...
- 在Ubuntu上安装Odoo时遇到的问题
这两天开始看<Odoo快速入门与实践 Python开发ERP指南>(刘金亮 2019年5月第1版 机械工业出版社).试着在Ubuntu上安装Odoo,遇到很多问题,通过在网上查找,都已解 ...
- [异常解决] ubuntu上安装JLink驱动遇到的坑及给后来者的建议
一.前言 最近将整个电脑格式化,改成了linux操作系统 希望这样能让自己在一个新的世界探索技术.提升自己吧- win上的工具用多了,就不想变化了- 继上一篇<ubuntu上安装虚拟机遇到的问题 ...
- Ubuntu上安装Robomongo及添加到启动器
到目前为止,Robomongo仍是MongoDB最好的客户端管理工具,如需在Ubuntu上安装Robomongo,可直接从官网下载.tar.gz压缩包进行解压,然后直接运行bin目录下的robomon ...
- 在 Ubuntu 上安装 Android Studio
在 Ubuntu 上安装 Android Studio http://www.linuxidc.com/Linux/2013-05/84812.htm 打开terminal,输入以下命令 sudo a ...
- Ubuntu上安装Karma失败对策
在Ubuntu上安装Karma遇到超时 timeout 错误.Google了一下,国外的码农给了一个快捷的解决方案,实测可行,贴在这里: sudo apt-get install npm nodejs ...
- 在Ubuntu上安装LAMP服务器
1.安装Ubuntu上安装LAMP apt-get install lamp-server^ 2.安装过程中设置MySql密码 3.测试 创建index.php var/www/html/index. ...
- [译]How to Setup Sync Gateway on Ubuntu如何在ubuntu上安装sync-gateway
参考文章https://hidekiitakura.com/2015/03/21/how-to-setup-sync-gateway-on-ubuntudigitalocean/ 在此对作者表示感谢 ...
随机推荐
- C/C++:Unions 联合
原文:http://msdn.microsoft.com/en-us/library/5dxy4b7b(v=vs.80).aspx 联合是用户定义的数据或类类型,在任何时间里,它只包含成员列表中的一个 ...
- Django-Rest-Framework 教程: 快速入门
本篇中, 我们会创建一个简单的API, 用来查看和编辑django默认的user和group数据. 1. 设置 我们创建django项目tutorial, 和app quickstart: # 创建新 ...
- java基础总结——数组
数组需要掌握的: 1.数组的定义 2.数组的内存分配及特点 3.数组操作常见问题 4.数组常见操作 5.数组中的数组(理解) 数组唯一属性:length,即数组的长度. 1.数组定义 格式一: 元素类 ...
- replace 全局替换 和 数组去空
<script> /*var str = 'a,b,dhhhh,d'; str = str.replace(/h/g,'j'); alert(str);*/ </script> ...
- CoreData的数据迁移
CoreData的数据迁移 很多人说CoreData坑多,现在才感觉到,今天上午写代码的时候,发现了一个大问题. 过程如下,之前我自己给coredata的实体添加了几个字段,后来网上的一个用户说我 ...
- openFileDialog与saveFileDialog的使用
private void btnOpen_Click(object sender, EventArgs e) { if (openFileDialog1.ShowDialog() == DialogR ...
- Video.js网页视频播放插件
插件描述:Video.js 是一个通用的在网页上嵌入视频播放器的 JS 库,Video.js 自动检测浏览器对 HTML5 的支持情况,如果不支持 HTML5 则自动使用 Flash 播放器. ...
- mysql C API 字符串玩转备份调优
- 计算机视觉库 SimpleCV
SimpleCV首页.文档和下载 - 计算机视觉库 - 开源中国社区 计算机视觉库 SimpleCV 编辑/纠错 分享到 新浪微博腾讯微博 已用 +0 收藏 + ...
- thinkjs初试
背景 什么是thinkjs?thinkjs是奇舞团开源的一款NodejsMVC框架,该框架底层基于Promise来实现,很好的解决了Nodejs里异步回调的问题.我为什么会使用thi ...