起床,还是忍不住,打算装一下驱动程序和cuda

安装NVIDIA-390

首先屏蔽nouveau

1
2
sudo vim /etc/modprobe.d/blacklist.conf //添加blacklist nouveau来把这个开源驱动加入黑名单
sudo vim /boot/grub/grub.cfg //quiet slash 后面添加acpi_osi=linux nomodeset 永久禁用nouveau驱动,这样开机就不会无限登录了

安装显卡驱动

1
2
3
4
5
6
7
8
9
10
11
12
13
sudo apt-get purge nvidia-*  //删除可能存在的已有驱动

zhou@zhou-son:~$ ubuntu-drivers devices
== /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 ==
modalias : pci:v000010DEd00001C8Dsv00001043sd000015E0bc03sc02i00
vendor : NVIDIA Corporation
model : GP107M [GeForce GTX 1050 Mobile]
driver : nvidia-driver-390 - distro non-free recommended
driver : xserver-xorg-video-nouveau - distro free builtin

sudo ubuntu-drivers autoinstall

nvidia-smi //能正常显示就好了,其他的不需要管,因为笔电的显示器是接在集显上的,也不需要独显来显示,只需要训练的时候能够调用gpu计算就OK

安装CUDA9.0

目前TF支持最好的就是CUDA9.0了

GCC/G++降级

Ubuntu18.04默认版本不是CUDA要求的4.8,有两种办法一种是修改CUDA绕过版本验证,另一种是GCC降级。

1
2
3
4
5
6
7
8
sudo apt-get install gcc-4.8
sudo apt-get install g++-4.8
cd /usr/bin
ls -l gcc* #会看到gcc指向gcc7
sudo mv gcc gcc.bak #备份
sudo ln -s gcc-4.8 gcc #重建软链接
sudo mv g++ g++.bak
sudo ln -s g++-4.8 g++

RUN安装CUDA

下载run,然后执行安装就好,当然会提示安装NVIDIA384的显卡驱动,选NO就行。关于CUDA的软链接还是选YES,后期如果需要多个cuda版本再说。安装完成后,就会出现下面的提示:

  • PATH includes /usr/local/cuda-9.0/bin

  • LD_LIBRARY_PATH includes /usr/local/cuda-9.0/lib64, or, add /usr/local/cuda-9.0/lib64 to /etc/ld.so.conf and run ldconfig as root

    1
    sudo vim /etc/profile

    添加CUDA的环境变量

    最后跑两个示例程序就OK

安装CUDNN

download cudnn然后tar开压缩包

1
2
3
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

安装tensorflow1.11

1
2
pip3 install tensorflow-gpu
python3 //import一下,测试之前所有的配置是否生效