注:本文原创,作者:Noah Zhang  (http://www.cnblogs.com/noahzn/)

决定加入深度学习的大军,感谢导师给配了台新设备!第一次接触服务器并配置开发环境,整个过程中遇到不少坑,但是好在最后都成功解决了。不过有点担心的是,Tesla k40c 默认还要一个辅助供电,我目前只插了8pin的供电接口,6pin的供电接口没插,不知道后续计算会不会受影响……心里怕怕的……

首先报一下硬件配置:

服务器:联想TD350:

CPU:Intel® Xeon(R) CPU E5-2620 v4 @ 2.10GHz × 32

内存:16G × 2条

硬盘:2TB

显卡:Tesla K40c

一、安装Ubuntu16.04 LTS 64bit

自行下载安装程序iso文件,用ultraISO制作成优盘启动盘。安装。

二、安装CUDA8.0

Tesla K40c 是纯计算卡,切换至这款显卡后,无法显示GUI界面,按照同学的说法“再装块其他的独显作为显示”,虽然可行,但是白白浪费一块独显。按照以下方法可以做到平时显示用Intel自带集显,运算时再切换至Tesla K40c。

1. 检查是否正确识别显卡:

在Terminal中输入:

lspci | grep -i nvidia

显示:

:00.0 3D controller: NVIDIA Corporation GK110BGL [Tesla K40c] (rev a1)

2. 查看GCC安装版本:

gcc --version

显示:

gcc (Ubuntu 5.4.-6ubuntu1~16.04.) 5.4.
Copyright (C) Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

3. 查看是否已有安装的NVIDIA驱动:

如果有,请卸载。本人的服务器是新的,所以木有安装过。

lsmod | grep nvidia

4. 查看集显驱动:

lsmod | grep nouveau

5. 下载CUDA8.0:

去cuda官网下载对应版本的驱动,请下载.run格式的安装文件,不要下载deb格式的!把安装文件放在任意目录下。

6. 禁用显卡驱动:

Ctrl + Alt + F1 进入tty1界面。

关闭桌面服务:

sudo service lightdm stop

把自带显卡驱动加入黑名单:

cd /etc/modprobe.d/

sudo touch blacklist-nouveau.conf

sudo su root

echo "blacklist nouveau">>blacklist-nouveau.conf
echo "options nouveau modeset=0">>blacklist-nouveau.conf

立即生效:

sudo update-initramfs -u

重启系统。

7. 安装CUDA:

再次进入tty1,并再次关闭桌面服务,找到刚才存放.run安装程序的路径,安装一下,后面跟上参数!!

sudo ./cuda_8..44_linux.run --no-opengl-libs

按照提示,输入yes或者回车,装完后开启桌面服务:

sudo service lightdm start

重启。

8. 后续配置:

2016年12月16日补充:ubuntu16.04下创建这个问题件后,开机会提示问题,然后会自动删除这个文件,没这个文件一切也挺正常的。。所以暂时可以不用改这个文件了。

创建 /etc/X11/xorg.conf 文件,内容如下:

Section "Device"
  Identifier "intel"
  Driver "intel"
  BusID "PCI:0@0:2:0"
  Option "AccelMethod" "SNA"
EndSection

打开文件 /etc/default/grub, 在 GRUB_CMDLINE_LINUX_DEFAULT 后增加一个参数: "nogpumanager"。

立即生效:

sudo update-grub

9. 配置环境变量:

/etc/profile文件最后增加两行:

export PATH=$PATH:/usr/local/cuda-8.0/bin
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:/lib

我的CUDA装在默认位置,如果你的不是,请自行修改上述路径吧~

立即生效:

source /etc/profile

10. 验证安装:

终端输入:

lsmod | grep nvidia

显示:

nvidia_drm
nvidia_modeset nvidia_drm
nvidia nvidia_modeset
drm_kms_helper ast,nvidia_drm
drm ast,ttm,drm_kms_helper,nvidia_drm

终端输入:

nvcc -V

显示:

nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) - NVIDIA Corporation
Built on Sun_Sep__4_22::01_CDT_2016
Cuda compilation tools, release 8.0, V8.0.44

三、 安装Anaconda3

官网下载python3.5版本,cd到安装程序目录下执行:

sudo sh Anaconda3-4.2.-Linux-x86_64.sh

安装过程中提示要不要加入环境变量啥的,都选yes。

四、 安装Matlab2016a

下载好破解版的Matlab iso镜像, cd到镜像文件目录下执行:

sudo mount -t iso9660 -o loop R2016a_glnxa64.iso /mnt

cd /mnt
./install

一开始输入破解文件夹内的序列号,装完以后,把破解文件夹内的两个lib开头的文件拷到 /usr/local/MATLAB/R2016a/bin/glnxa64/ 目录下,注意操作权限。

打开Matlab:

cd /usr/local/MATLAB/R2016a/bin
./matlab

定位到破解文件夹内的lic文件。

安装一个插件:

sudo apt-get install matlab-support

按照要求输入matlab执行程序所在bin文件夹的上层目录。

以后就可以直接在终端里输入 matlab 来启动啦!

五、安装OPENCV3.1

先装下各种可能用到的依赖库吧:


sudo  apt-get update
sudo  apt-get install  build-essential

sudo apt-get install libopenblas-dev

sudo apt-get install liblapack-dev 

sudo apt-get install libatlas-base-dev

sudo apt-get install libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev

安装cmake、git,这里还要安装下cmake的gui程序,后续编译opencv我们在gui界面操作!

sudo apt-get install cmake git cmake-qt-gui

下载opencv3.1源码以及扩展包源码:

cd /home/noah/
mkdir opencv
mkdir build
cd opencv git clone https://github.com/Itseez/opencv.git git clone https://github.com/Itseez/opencv_contrib.git

使用cmake-gui编译至刚才创建的build文件夹

终端输入:

cmake-gui

配置方法可以参考我在windows下编译opencv的博文,主要看下anaconda这些有没有被检测到,还要在扩展包路径里选择 /opencv_contrib/modules 文件夹。

编译好之后,终端进入build文件夹:

make -j16

大家根据自己CPU情况更改数字哦,make过程会很久,特别是到opencv_perf_stitch 和python3 这两步时,估计要等四十分钟………………完成后,安装:

sudo make install

安装完后,检测一下,终端输入python,然后import cv2试试,如果出现说什么libstdc++.so.6 有问题,软连接一下:

sudo ln -sf /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0. /home/noah/anaconda3/lib/libstdc++.so.

同理,如果libgomp.so.1文件有问题,也软连接一下:

sudo ln -sf /usr/lib/x86_64-linux-gnu/libgomp.so. /home/noah/anaconda3/lib/libgomp.so.

再import cv2就可以咯~~~~

六、安装CuDNN5.1

去官网下载最新版本CuDNN5.1,tga格式。

终端输入:

tar -zxf cudnn-8.0-linux-x64-v5..tgz
cd cuda/ sudo cp lib64/* /usr/local/cuda-8.0/lib64/
sudo cp include/cudnn.h /usr/local/cuda-8.0/include/

七、安装MXNet

下载mxnet:

git clone https://github.com/dmlc/mxnet.git ~/mxnet --recursive

修改 /mxnet/make/config.mk,把USE_CUDNN=0、USE_CUDA=0 都改成=1,并且指定CUDA路径:/usr/local/cuda,在mxnet根目录下编译:

make -j16

cd /mxnet/python 目录,执行:

python setup.py install

跑下示例程序吧~~ cd /mxnet/example/image-classification/,执行:

python train_mnist.py --gpus 0

没问题的话就OK啦!!

附:参考资料

http://www.cnblogs.com/muchong/p/6093328.html

https://my.oschina.net/u/1046919/blog/479947

http://www.cnblogs.com/gaowengang/p/6068788.html

http://mxnet.io/get_started/setup.html#installing-mxnet

http://jingyan.baidu.com/article/d45ad148a78cbe69552b8089.html

配有Tesla K40c的服务器新装Ubuntu16.04并安装CUDA8.0、Anaconda3、Matlab2016a、OPENCV3.1、CuDNN5.1、MXNet的更多相关文章

  1. ubuntu16.04下安装cuda8.0

    一.首先安装NVIDIA显卡驱动 通过NVIDIA-Linux-x86_64-367.44.run文件安装. 1. 添加 PPA. sudo add-apt-repository ppa:graphi ...

  2. Ubuntu16.04下安装CUDA8.0和tensorflow

    GPU版的Tensorflow无疑是深度学习的一大神器,当然caffe之类的框架也可以用GPU来加速训练. 注意:以下安装默认为python2.7 1. 安装依赖包 $ sudo apt-get in ...

  3. 深度学习环境搭建:Tensorflow1.4.0+Ubuntu16.04+Python3.5+Cuda8.0+Cudnn6.0

    目录 深度学习环境搭建:Tensorflow1.4.0+Ubuntu16.04+Python3.5+Cuda8.0+Cudnn6.0 Reference 硬件说明: 软件准备: 1. 安装Ubuntu ...

  4. Ubuntu16.04 GTX750安装CUDA9.0,Pytorch,Anaconda教程

    Ubuntu16 GTX750安装CUDA9.0,Pytorch,Anaconda教程 安装前警告 不要使用Ubuntu18! 不要使用Ubuntu18! 不要使用Ubuntu18! 务必重装成Ubu ...

  5. Ubuntu14.04下安装Cuda8.0

    https://blog.csdn.net/sinat_19628145/article/details/60475696 https://developer.nvidia.com/cuda-down ...

  6. Ubuntu 14.04下安装CUDA8.0

    配置环境如下: 系统:Ubuntu14.04 64bit 显卡:Nvidia K620M 显卡驱动:Nvidia-Linux-x86_64-375.66.run CUDA8.0 +  cudnn8.0 ...

  7. Ubuntu 16.04 LTS安装 cuda8.0

    参考文献: http://blog.csdn.net/autocyz/article/details/52299889 http://blog.csdn.net/lixintong1992/artic ...

  8. 保姆级教程——Ubuntu16.04 Server下深度学习环境搭建:安装CUDA8.0,cuDNN6.0,Bazel0.5.4,源码编译安装TensorFlow1.4.0(GPU版)

    写在前面 本文叙述了在Ubuntu16.04 Server下安装CUDA8.0,cuDNN6.0以及源码编译安装TensorFlow1.4.0(GPU版)的亲身经历,包括遇到的问题及解决办法,也有一些 ...

  9. SLAM+语音机器人DIY系列:(二)ROS入门——3.在ubuntu16.04中安装ROS kinetic

    摘要 ROS机器人操作系统在机器人应用领域很流行,依托代码开源和模块间协作等特性,给机器人开发者带来了很大的方便.我们的机器人“miiboo”中的大部分程序也采用ROS进行开发,所以本文就重点对ROS ...

随机推荐

  1. 会话数据的保存——cookie

    会话的理解 可以简单的理解为:用户打开浏览器,访问多个web资源,然后关闭浏览器,这个过程可以称为一次会话 有状态会话:可以简单理解为一个同学来了这个教室,下一次再来我们知道他来过这个教室,我们可以称 ...

  2. Java程序猿学习C++之字符串

    #include <iostream> #include <string.h> using namespace std; int my_len(const char *str) ...

  3. 使用val()方法设置表单中的默认选中项

    有时候我们展示给用户的表单中的checkbox,radio,selec等标签的一些项是默认选中的.比方:当用户改动文章的时候,假设相应的栏目为下拉框的话,那么它的默认选中值应该是原来的栏目位置. 能够 ...

  4. 怎样在win7下装ubuntu(硬盘版安装)

    1)首先还是分区,在计算机上右键--管理--磁盘管理 装Ubuntu分配的硬盘大小最好是(20G以上)不要太小,这里请注意,ubuntu和windows文件系统全然不同,所以我们划好要给ubuntu的 ...

  5. 用tsung测试openfire 服务器性能

    最近公司需要做一个有聊天功能的应用,客户讲的是很宏大,用户超多,以前搞过openfire,但没有深入的去了解,就想用它来搞,而且是用 java写的,想扩展也容易些,但在性能上一直担忧,想测试一下它的性 ...

  6. oracle13 触发器 变量

    触发器   触发器是指隐含的执行的存储过程.当定义触发器时,必须要指定触发的事件和触发的操作,常用的触发事件包括insert,update,delete语句,而触发操作实际就是一个pl/sql块.可以 ...

  7. IO负载高的来源定位 IO系列

    http://elf8848.iteye.com/category/281637 前言: 在一般运维工作中经常会遇到这么一个场景,服务器的IO负载很高(iostat中的util),但是无法快速的定位到 ...

  8. struts2标签汇总

    要在jsp中使用Struts2的标志,先要指明标志的引入.通过jsp的代码的顶部加入以下的代码:<%@taglib prefix="s" uri="/struts- ...

  9. linux vncserver配置

    需要使用Linux的远程桌面服务,xmanager之前用过,感觉一般,这次尝试下vnc 我的操作系统是centos7 一服务端 安装VNCServer #yum -y install vnc *vnc ...

  10. Effective C++ 笔记一 让自己习惯C++

    条款01:视C++为一个语言联邦 C++是个多重范型编程语言,一个同时支持面向过程形式.面向对象形式.函数形式.泛型形式.元编程形式的寓言. 将C++视为几个子语言: 传统C:区块.语句.预处理器.内 ...