被cuda折磨得死去活来,下面是经验总结:
- 原则一:GPU和CUDA分开安装
- 原则二:GPU驱动包保持最新,CDUA按需安装
一、下载最新GPU驱动并安装
下载最新驱动(解决内核不兼容问题)及需要的CUDA安装包
官网下载最新驱动
官网下载cuda 9.0
二、安装必要的基础库(可参考文末的yum加速配置)
yum install gcc
yum install kernel*
yum install epel-release
yum install --enablerepo=epel dkms
三、屏蔽默认带有的nouveau
3.1 使用su命令修改文件
sudo vi /lib/modprobe.d/dist-blacklist.conf
修改内容如下:
#将nvidiafb注释掉。
#blacklist nvidiafb
...
#然后添加以下语句:
blacklist nouveau
options nouveau modeset=0
3.2 重建initramfs image
mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
dracut /boot/initramfs-$(uname -r).img $(uname -r)
3.3 reboot 重启
3.4(可选) 查看nouveau是否已经禁用
lsmod | grep nouveau
三、安装驱动
chmod 777 显卡驱动.run
sh 显卡驱动.run
chmod 777 CUDA驱动.run
sh CUDA驱动.run
四、下载加速配置
4.0 禁用ipv6
解决yum无法解析
vi /etc/default/grub
找到GRUB_CMDLINE_LINUX这一行,在双引号内加入如下内容,注意与其他项目之间使用空格隔开:
GRUB_CMDLINE_LINUX="ipv6.disable=1"
在终端输入如下内容:
grub2-mkconfig -o /boot/grub2/grub.cfg
reboot
重启完成之后,使用以下命令查看IPv6模块是否已经全部关闭(截图为未禁用IPv6情况,禁用之后是没有内容的):
lsmod | grep ipv6
4.1 配置yum阿里源
4.1.1 禁用ipv6
在CentOS 7下不要直接修改/etc/resolv.conf,而是应该使用Systemctl restart NetworkManager命令,它会根据/etc/sysconfig/network-scripts/ifcfg-eth0自动生成etc/resolv.conf。
#第一步:备份本地yum源
yum install wget
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
#第二步:下载阿里yum源文件
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
#第三步:生成yum缓存
yum clean all
yum makecache
4.2 配置pip 阿里源
Linux系统:
mkdir ~/.pip
cat > ~/.pip/pip.conf << EOF
[global]
trusted-host=mirrors.aliyun.com
index-url=https://mirrors.aliyun.com/pypi/simple/
EOF
4.3 配置conda阿里源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
4.4 安装Anaconda3
官网下载sh安装文件并安装
激活
echo 'export PATH="~/anaconda3/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
yum install -y python-qt4
conda create -n lutz python=3.6.5 -y
source activate lutz
conda install tensorflow-gpu -y
pip install scikit-image
pip install keras==2.0.8
pip install opencv-python==3.4.5.20
conda install nb_conda
nohup tensorboard --host 0.0.0.0 --logdir=./logs > tensorboard .log &
nohup jupyter notebook --ip 0.0.0.0 --no-browser --allow-root > jupyter.log &
安装jupyter代码提示
conda install jupyter
pip install jupyter_contrib_nbextensions
jupyter contrib nbextension install --user
pip install jupyter_nbextensions_configurator
jupyter nbextensions_configurator enable --user
nbextensions勾选Hinterland
网友评论