深度学习实验室服务器系统配置手册
目录:
一,显卡安装
二,U盘启动盘制作
三,系统安装
四,系统的基本配置
五,安装Nvidia驱动
六,安装cuda7.5
七,安装cudnn5.1
八,安装opencv2.4.10
九,安装caffe
一,硬件安装
1,拧动背侧的螺丝,拆除两侧机壳罩
2,将GPU插入对应卡槽,封紧螺丝
3,线头黑色一端按照6+8插入,灰色一端插入另一侧任意插口内
4,电脑显示屏连接使用HDML转VGA接头连接GPU外侧对应插口,另一端连接显示屏,分别连接电源,即可开机
二,u盘启动盘制作
硬件:内存大于8G的U盘
软件工具:ultraiso
1,到达下载地址,下载ubuntu 14.04.5 server(64bit)版本系统大小为619MB
2,下载并安装ultraiso软件
3,文件->打开->确认对应的ISO文件所在位置,启动->写入硬盘映像->确认->写入
4,将下载好的ISO文件拷入U盘(后期解决挂载问题时要用到这个文件)
5,U盘启动盘到这里就制作完毕
三,系统安装
1,基本选择:
English
Install ubuntu server
English
US
No
English
English
.......
.......
2,问题解决:
CD-rom挂载问题:
ls /dev/sd*
拔出优盘
再次输入ls /dev/sd*
mkdir udev
mount /dev/sdb4 /udev
mount /udev/ubuntu.14.04.iso /cdrom
exit
磁盘分区问题:
umount partition ...意为格式化磁盘
所以选择yes,对磁盘进行格式化
然后选择分区entir disk
然后选择2T的分区确认即可
两个选项问题:
no automotic upgrades
isntall new GRUB
四,新系统的基本配置
1,登录root用户,更改root密码
sudo passwd
输入初始本账户密码:
然后输入UNIX root密码:
然后 su即可切换到root用户
2,允许root账户登录SSH:
vi /etc/ssh/sshd_config
将PermitRootLogin值改yes
然后执行如下命令重新加载配置文件
source /etc/sshd_config
3,配置DHCP网络协议:
如果可以上网,不用进行本步骤设置!
原因:由于之前已经在路由器端设置好了,所以本步一般情况下可以直接跳过
如果出现无法上网的问题,首先检查网线是否插好(插好时是黄灯常亮)
确认网线准确插入后,进行下述操作:
首先运行ifconfig命令,查看启动了的网卡
查看服务器所有网卡:ifconfig -a
发现有三个网卡分别是:lo, eth0,eth1
加载网卡:ifconfig eth0 up
接下来编辑:vi /etc/network/interfaces
并用下面的行来替换有关eth0的行:
# The primary network interface - use DHCP to find our address
auto eth0
iface eth0 inet dhcp
用下面的命令使网络设置生效:sudo /etc/init.d/networking restart
也可以在命令行下直接输入下面的命令来获取地址sudo dhclient eth0
如果有问题参考:
4,操作系统更新:
sudo apt-get update
sudo apt-get install build-essential
5,安装基本依赖库:
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler --no-install-recommends libboost-all-dev
安装编译软件cmake,sudo apt-get install cmake
五,安装nvidia驱动
1,确保包已经安装完成(部分缺失根据提示进行安装)
3,修改该文件权限为可执行文件(+x),chmod +x aaaaaa.run
4,之后输入:./aaaaaa.run 即可开始安装
六,安装Cuda7.5
3,安装完成后,设置cuda配置文件:
vi /etc/profile
在结尾处添加内容如下:
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
4,配置完文件后执行:执行source /etc.profile使得环境变量生效
5,终端输入:nvcc -V,会出现cuda的版本号即为安装成功
七,安装cudnn5.1
1,下载地址:
2,解压传入
3,cd到传入文件夹cuda目录下,执行命令
sudo cp lib64/* /usr/local/cuda/lib64/ -d
sudo cp include/cudnn.h /usr/local/cuda/include/
4,更新软链接
cd /usr/local/cuda/lib64/
sudo rm -rf libcudnn.so libcudnn.so.5
sudo ln -s libcudnn.so.5.1.3 libcudnn.so.5
sudo ln -s libcudnn.so.5 libcudnn.so
然后sudo ldconfig
八,安装opencv2.4.10
安装完毕后ldconfig后会报错如下:
/usr/lib/libnppi.so.7.5 is not a symbolic link
/usr/lib/libcudnn.so.5 is not a symbolic link
/usr/lib/libnpps.so.7.5 is not a symbolic link
/usr/lib/libcufft.so.7.5 is not a symbolic link
/usr/lib/libcurand.so.7.5 is not a symbolic link
/usr/lib/libnvblas.so.7.5 is not a symbolic link
/usr/lib/libcuinj64.so.7.5 is not a symbolic link
/usr/lib/libcusparse.so.7.5 is not a symbolic link
/usr/lib/libnvrtc.so.7.5 is not a symbolic link
/usr/lib/libnppc.so.7.5 is not a symbolic link
/usr/lib/libcudart.so.7.5 is not a symbolic link
/usr/lib/libnvToolsExt.so.1 is not a symbolic link
/usr/lib/libcublas.so.7.5 is not a symbolic link
/usr/lib/libnvrtc-builtins.so.7.5 is not a symbolic link
/usr/lib/libcusolver.so.7.5 is not a symbolic link
该问题的解决方案:
重建软连接,
rm -rf xxx.so xxx.so.7.5
ln -s xxx.so.7.5.18 xxx.so.7.5
ln -s xxx.so.7.5 xxx.so
重复以上操作16次,就可以解决这个问题了
九,安装caffe
1.,安装Caffe需要的Python包
sudo apt-get install -y python-numpy python-scipy python-matplotlib python-sklearn
python-skimage python-h5py python-protobuf python-leveldb
python-networkx python-nose python-pandas python-gflags cython ipython python-yaml
2,将caffe源码使用Xftp传到自己的用户名目录下
然后执行下述命令:
cd caffe
sudo su
for req in $(cat requirements.txt); do pip install $req; done
在此处会出现错误:
prompt requirtment six>=1.9.0 ,
那么我们需要手动升级six包,具体操作如下:
到python官网下载包,然后解压缩,传入服务器
进入目录下,执行sudo python setup.py install命令即可安装完成。
安装完后退出:exit
3,编译caffe
修改配置文件
cd caffe
cp Makefile.config.example Makefile.config
vi Makefile.config
这里需要修改三处:
i) 使用cuDNN
# USE_CUDNN := 1
这里去掉#,取消注释为
USE_CUDNN := 1
ii) 修改python包目录,这句话
PYTHON_INCLUDE := /usr/include/python2.7 \
/usr/lib/python2.7/dist-packages/numpy/core/include
改为
PYTHON_INCLUDE := /usr/include/python2.7 \
/usr/local/lib/python2.7/dist-packages/numpy/core/include
因为新安装的python包目录在这里: /usr/local/lib/python2.7/dist-packages/
iii)由于安装的cuda版本是7.5,当前下载的caffe版本比较新,需要修改里面的Makefile.config文件,屏蔽下面的代码,cuda<8.0
#-gencode arch=compute_60,code=sm_60 \
#-gencode arch=compute_61,code=sm_61 \
#-gencode arch=compute_61,code=compute_61
接下来就好办了,直接make
make all -j12
本步骤会报错:
然后
make test -j12
make runtest//本步骤报错无关紧要,不会影响caffe使用
sudo make pycaffe
这时候cd 到caffe 下的 python 目录,试试caffe 的 python wrapper安装好没有:
在终端输入:python
然后:import caffe
如果不报错,那就说明安装好了
- 深度学习框架Caffe的编译安装
深度学习框架caffe特点,富有表达性.快速.模块化.下面介绍caffe如何在Ubuntu上编译安装. 1. 前提条件 安装依赖的软件包: CUDA 用来使用GPU模式计算. 建议使用 7.0 以上最 ...
- 深度学习框架-caffe安装-环境[Mac OSX 10.12]
深度学习框架-caffe安装 [Mac OSX 10.12] [参考资源] 1.英文原文:(使用GPU) [http://hoondy.com/2015/04/03/how-to-install-ca ...
- 深度学习框架-caffe安装-Mac OSX 10.12
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px ".PingFang SC"; color: #454545 } p.p2 ...
- 贾扬清分享_深度学习框架caffe
Caffe是一个清晰而高效的深度学习框架,其作者是博士毕业于UC Berkeley的 贾扬清,目前在Google工作.本文是根据机器学习研究会组织的online分享的交流内容,简单的整理了一下. 目录 ...
- 深度学习框架caffe/CNTK/Tensorflow/Theano/Torch的对比
在单GPU下,所有这些工具集都调用cuDNN,因此只要外层的计算或者内存分配差异不大其性能表现都差不多. Caffe: 1)主流工业级深度学习工具,具有出色的卷积神经网络实现.在计算机视觉领域Caff ...
- 【Spring学习笔记-1】Myeclipse下Spring环境搭建
*.hl_mark_KMSmartTagPinkImg{background-color:#ffaaff;}*.hl_mark_KMSmartTagBlueImg{background-color:# ...
- Docker+STF在ubuntu下测试环境搭建(详细搭建步骤及踩坑记录)
一.什么是OpenSTF? STF又称OpenSTF,它是一个手机设备管理平台,可以对手机进行远程管理.调试.远程手机桌面监控等操作.这个系统类似于目前很流行的云测服务比如Testin,虽然网页上提供 ...
- Ubuntu下qemu环境搭建
在查找资料过程中,发现自己搭建虚拟的arm环境的话,有一个比较好的软件就是qemu了,当然还有其他的,大家各投所好就好. 接下来说一下qemu环境搭建过程. 其实搭建很简单,作为小白,我还是捣鼓了两三 ...
- Ubuntu下qemu环境搭建vexpress开发平台
在查找资料过程中,发现自己搭建虚拟的arm环境的话,有一个比较好的软件就是qemu了,当然还有其他的,大家各投所好就好. 接下来说一下qemu环境搭建过程. 其实搭建很简单,作为小白,我还是捣鼓了两三 ...
随机推荐
- mysql的日期函数介绍
仅供参考 DAYOFWEEK(date) 返回日期date是星期几(1=星期天,2=星期一,……7=星期六,ODBC标准)mysql> select DAYOFWEEK('1998-02-03 ...
- 【Java】得到当前股票信息
import java.io.BufferedReader; import java.io.InputStreamReader; import java.net.HttpURLConnection; ...
- Mysql中的delimiter详解
初学mysql时,可能不太明白delimiter的真正用途,delimiter在mysql很多地方出现,比如存储过程.触发器.函数等. 学过oracle的人,再来学mysql就会感到很奇怪,百思不得其 ...
- oracle截取字符串去掉字段末尾指定长度的字符
lengthb(string)计算string所占的字节长度:返回字符串的长度,单位是字节 length(string)计算string所占的字符长度:返回字符串的长度,单位是字符 eg: //去掉该 ...
- 相关与卷积(数字信号处理)的数学原理及 Python 实现
数学原理 在数字信号处理中,相关(correlation)可以分为互相关(cross correlation)和自相关(auto-correlation). 互相关是两个数字序列之间的运算:自相关是单 ...
- c# 设计模式 之:策略模式
算法与对象的耦合: 对象可能经常需要使用多种不同的算法,但是如果变化频繁,会将类型变得脆弱... 动机: 在软件构建过程中,某些对象使用的算法可能多种多样,经常 ...
- 自己搭建anki服务器
目录 centos端 电脑客户端 安卓端 centos端 # 安装服务 yum -y install python-setuptools easy_install Ankiserver mkdir - ...
- Oracle EBS 更新客户地点
--更新客户地点 declare x_return_status ); x_msg_count NUMBER; x_msg_data ); x_profile_id NUMBER; l_locatio ...
- 浅析Oracle 12c中Data Guard新特性
浅析Oracle 12c中Data Guard新特性 写在前面 无论是做Oracle运维的小伙伴还是老伙伴,想必对Oracle数据库的数据级灾备核心技术—Data Guard是再熟悉不过了!这项从 ...
- firewalld防火墙简单理解总结(一)
参考文章:https://linux.cn/article-8098-1.html https://linux.cn/article-9073-1.html #多区域使用示例,重点参考 前言 防火 ...