实验室去年就上了块nVIDIA K20,荒废了一年都没人用。今年寒假又进了块GTX 980,老板让把hoomd blue配置好,做GPU计算。

HOOMD BLUE是一个通用的分子模拟程序包,使用python格式的脚本,支持并行计算和GPU计算配置过程走了太多弯路,于是笔记如下。

以装K20的那台服务器(Linux发行版Cent OS 6.5)为例,下载HOOMD BLUE的包:官网上下载hoomd-1.0.1-0.x86_64.rpm,使用

yum localinstall hoomd-1.0.1-0.x86_64.rpm

安装,自动解决依赖问题。运行python,输入“import hoomd”,报错“ImportError: libmpi_cxx.so.1: cannot open shared object file: No such file or directory”找不到MPI库,需要配置环境变量:

find /usr -name libmpi_cxx.so.1

找到库的路径,添加到环境变量 $LD_LIBRARY_PATH 中。为了方便暴力在/etc/profile中加入一句:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64/compat-openmpi/lib
现在运行官网给的示例脚本,hoomd test.hoomd,部分输出截取如下:Shell运行source /etc/profile使立即生效。

*Warning*: NVIDIA driver not installed or is too old, ignoring any GPUs in the system.

HOOMD-blue is running on the CPU

因为nVIDIA的驱动还没有装上。

先记得运行update-pciids更新设备信息,再用lspci | grep -i NVIDIA,出现“43:00.0 3D controller: NVIDIA Corporation GK110GL [Tesla K20c] (rev a1)”。到NVIDIA官网把驱动下载下来(在此),刚开始找还找不到,一看地址栏是geforce,还得到英文官网首页下找“All NVIDIA Drivers”

安装前关X,init 3进入字符界面,运行下载下来的.run,一路确定安装完成,再init 5进入图形界面,此时系统设置菜单中已多出一行NVIDIA X Server Settings,但是打开后报错说“You do not appear to be using the NVIDIA X Driver. Please edit your X configuration file”,就是说X不是用独显带的,可能是一些地方所说的nouveau搞的鬼,使用lsmod | grep nouveau确实能看到一堆服务,不过我们只拿GPU做计算,忽略之。

接下来安装cuda toolkit就蛋疼多了。按照官方给的文档(NVIDIA CUDA GETTING STARTED GUIDE FOR LINUX)的步骤一步一步来。先下载RPM包,目测这个rpm的作用就是添加nVIDIA的源;然后yum install cuda时果然报依赖性错——因为没有添加EPEL源。

网上给的方法:

1. 安装

rpm -Uvh http://mirrors.ustc.edu.cn/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

以上URL请按实际情况修改

2.查看是否安装成功

rpm -q epel-release

3.导入key:

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

4.修改/etc/yum.repos.d/epel.repo文件

在[epel]最后添加一条属性 priority=11

vi /etc/yum.repos.d/epel.repo

意思是yum先去官方源查,官方没有再去epel的源找

5.重建缓存

但是执行yum makecache时报错,"Cannot retrieve metalink for repository",搜索得解决方法为

sudo sed -i "s/mirrorlist=https/mirrorlist=http/" /etc/yum.repos.d/epel.repo

即把源的https网址换成http,目测是天杀的墙搞的鬼。

现在就可以使用yum install cuda了,然后便是漫长的下载。

完成后照例暴力添加环境变量:

export PATH=/usr/local/cuda-6.5/bin:$PATH

export LD_LIBRARY_PATH=/usr/local/cuda-6.5/lib64:$LD_LIBRARY_PATH

复制示例:

cuda-install-samples-6.5.sh

测试编译示例中的1_Utilities/deviceQuery,make编译通过,运行时却报错“No device in the query”--显卡又不见了。

折腾半天,重新安装显卡驱动解决。。。

再次此运行显示设备信息:

./deviceQuery Starting...CUDA Device Query (Runtime API) version (CUDART static linking)Detected 1 CUDA Capable device(s)Device 0: "Tesla K20c"CUDA Driver Version / Runtime Version          6.5 / 6.5CUDA Capability Major/Minor version number:    3.5Total amount of global memory:                 4800 MBytes (5032706048 bytes)(13) Multiprocessors, (192) CUDA Cores/MP:     2496 CUDA CoresGPU Clock rate:                                706 MHz (0.71 GHz)Memory Clock rate:                             2600 MhzMemory Bus Width:                              320-bitL2 Cache Size:                                 1310720 bytesMaximum Texture Dimension Size (x,y,z)         1D=(65536), 2D=(65536, 65536), 3D=(4096, 4096, 4096)Maximum Layered 1D Texture Size, (num) layers  1D=(16384), 2048 layersMaximum Layered 2D Texture Size, (num) layers  2D=(16384, 16384), 2048 layersTotal amount of constant memory:               65536 bytesTotal amount of shared memory per block:       49152 bytesTotal number of registers available per block: 65536Warp size:                                     32Maximum number of threads per multiprocessor:  2048Maximum number of threads per block:           1024Max dimension size of a thread block (x,y,z): (1024, 1024, 64)Max dimension size of a grid size    (x,y,z): (2147483647, 65535, 65535)Maximum memory pitch:                          2147483647 bytesTexture alignment:                             512 bytesConcurrent copy and kernel execution:          Yes with 2 copy engine(s)Run time limit on kernels:                     NoIntegrated GPU sharing Host Memory:            NoSupport host page-locked memory mapping:       YesAlignment requirement for Surfaces:            YesDevice has ECC support:                        EnabledDevice supports Unified Addressing (UVA):      YesDevice PCI Bus ID / PCI location ID:           67 / 0Compute Mode:< Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 6.5, CUDA Runtime Version = 6.5, NumDevs = 1, Device0 = Tesla K20c
Result = PASS
现在再测试HOOMD BLUE,终于显示为GPU模式了:
qHOOMD-blue is running on the following GPU(s):[0]            Tesla K20c  13 SM_3.5 @ 0.706 GHz, 4799 MiB DRAM

先鼓捣的是GTX980的机器,中途还把系统弄坏了。cuda toolkit安装以后,图形界面进不去了;测试deviceQuery报错“nvidia-340uvm : no such file”,卸掉cuda之后重启干脆连系统都进不了了,屏幕直接卡在一堆形如------可是实测发现直接运行官网的示例脚本,GPU模式比CPU模式反而慢6倍,看来要发挥出GPU的性能还得好好看文档。

<内存地址信息> 不明所以的文字

这样的信息上。

PC上只有ubuntu的系统,于是给重装个ubuntu 14.04 LTS算了。

继续鼓捣,ubuntu的apt-get果然强大,不需要添加第三方源依赖问题就可解决,但安装完cuda toolkit之后图形界面又进不去了【死,

再次安装显卡驱动,一些恢复正常。。。

结论:Cuda Toolkit的安装默认会刷新显卡驱动,但这时装上的显卡驱动是废的,得重装新版本的驱动。GTX980在官网显示最老的可用驱动版本是343,而Cuda tolkit给装的是340版本,可能不可用,若此时再把旧驱动卸掉,整个显卡驱动就没了,重启就会导致系统死掉。

Note: Linux安装CUDA Toolkit HOOMD BLUE相关推荐

  1. Ubuntu 16.04 安装 CUDA Toolkit 10.0

    Ubuntu 16.04 安装 CUDA Toolkit 10.0 NVIDIA 引领人工智能计算 - NVIDIA https://www.nvidia.cn/ CUDA Zone https:// ...

  2. Linux安装CUDA的正确姿势

    Linux安装CUDA的正确姿势 CUDA(Compute Unified Device Architecture,统一计算架构)是由NVIDIA所推出的一种集成技术,是该公司对于GPGPU的正式名称 ...

  3. linux安装 cuda.run,在CentOS上安装cuda

    8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 这篇文档是参照NVIDIA的官方文档做了删减修补而成,官方文档在这里. 这篇教程在以下服务器上部署成功: 系统版本:Ub ...

  4. Windows 系统上安装 CUDA Toolkit 10.1

    Windows 系统上安装 CUDA Toolkit 10.1 0. NVCUDA.DLL - NVIDIA CUDA 10.1.135 driver - NVIDIA 驱动程序版本 NVIDIA 控 ...

  5. linux安装 cuda、cdunn、numpy、scipy、theano、pylearn2、scikit-neuralnetwork

    前言:学习第一步安装,折腾n天,终于装完了!!!激动!scikit-neuralnetwork,cuda什么的回想一下并不难装,最难的是版本的匹配问题.帖子写的很细致,我的问题都写进去了,我觉得看一遍 ...

  6. linux安装cuda出现You appear to be running an X server; please exit X before installing.错误

    使用runfile安装cuda出现如下错误 sudo sh cuda_11.2.0_460.27.04_linux.run nvidia-installer log file '/var/log/nv ...

  7. win10子系统linux安装Cuda,Win10和Ubuntu16双系统,以及CUDA安装

    Win10和Ubuntu16双系统 1,正常安装Win10. 2,进入  此电脑--管理--磁盘管理,压缩卷或者删除卷,为ubuntu预留磁盘空间. 3,UltraISO制作Ubuntu安装U盘. 4 ...

  8. linux安装CUDA+cuDNN

    CUDA 选择runfile版本,不要直接在服务器上用Installation Instructions,因为下不下来.用IDM下载器等工具,在自己电脑上下好之后,传到服务器上,然后执行以下命令.其中 ...

  9. linux安装cuda需要先安装NVIDIA显卡驱动

    CentOS7.3安装NVIDIA-1080ti驱动.cuda.cudnn.TensorFlow - 负赑屃 - 博客园 使用这个教程 学习语音之家付费教程踩坑实录 在虚拟机安装NVIDIA显卡驱动失 ...

最新文章

  1. C++ 区分中文,非中文,截取含有中文的string字符串的两种方法
  2. python 返回字符串长度_Python在使用特殊字符时返回错误的字符串长度
  3. 怎么看java中ide_如何在eclipse IDE中查看Java的字节码?
  4. mysql必_MySQL必知必会(一)
  5. LeetCode 934 最短的桥
  6. idea 添加servlet依赖_详解如何使用IntelliJ IDEA新建一个Servlet项目
  7. 创建对称矩阵(numpy)
  8. [软件更新]迅雷v5.9.8.1084发布
  9. JSP综合开发实例——清爽夏日九宫格(DIV+CSS布局)
  10. 有赞会不会成为去中心化流量时代的淘宝
  11. 怎样修复CRC校验错误?
  12. Mongodb Mysql 小测试 (To Be Continued)
  13. Excel文件提示文件损坏
  14. ArcGIS教程 - 附录 - ArcGIS快捷键
  15. 乡村老师网络计算机培训日志,乡村教师网络研修心得体会
  16. 用 Java 实现坦克大战,这个有点强了!
  17. 华为网络----OSPF重分发与优化(二)
  18. 程序员修炼之路:算法的力量
  19. 产品设计需要学的8款软件
  20. Android闪闪发光字体效果

热门文章

  1. 转载 我的择业思考 在AI最火的时候来到工业界
  2. Win10官方1909版本无法打开windows安全中心中病毒和威胁防护的实时保护解决方案。
  3. python狗狗年龄换算程序_关于狗狗的年龄换算?
  4. 微信小程序 界面从右边滑出_微信小程序侧边栏滑动特效(左右滑动)
  5. 个人职业生涯规划发展
  6. 【O2O领域】外卖订餐后台管理系统Axure原型作品欣赏(经典B端实战原型)
  7. Pandas+Pyecharts | 北京近五年历史天气数据可视化
  8. c语言构造函数和析构函数,深入解析C++中的构造函数和析构函数
  9. Incorporating Copying Mechanism in Sequence-to-Sequence Learning
  10. 黄帝内经.素问.异法方宜论篇(12)