Ubuntu 18.04 run方式安装Cuda9.0 惠普Z6工作站

我已经写了几篇Cuda崩溃的博客,都是在这台惠普Z6工作站上。以前也用cuda,安装用deb,然后apt,到这台机器同样的命令和安装方式,出现了依赖问题,也就是cuda-9-0 (>= 9.0.176)导致apt不能安装。针对该问题,我使用了aptitude安装好了cuda和配套驱动,图像界面也是正常工作了。

在一段时间后,使用matlab r2018a的figure绘图,图形界面系统崩溃了,再也起不来。经过一番搜索,添加了nvidia驱动ppa,使用apt方式安装cuda和配套驱动,又正常工作了。关键好景不长,图形界面又在matlab的绘图命令下崩溃了,导致cuda也无法使用,主要是一直报错“nvidia-persistenced: Received signal 15”,“nvidia-persistenced: Socket closed”,然后无限循环该启动关闭过程。这些问题在我前面的博客中有详细记录,自己尝试的方案也都没有彻底解决问题,有时也怀疑该工作站是否有软硬件兼容等问题,或者低层指令集的bug。

由于崩溃问题越来越严重,使用apt或者aptitude重新安装cuda以及配套驱动也无法使cuda和桌面系统正常工作起来了,不得不做别的尝试。在此,如果对我的博客记录的问题有兴趣,或者有解决方案,不妨留言交流,在此表示感谢。

因此也就有了这篇博客,在不想重装系统,不想用cuda9.2的情况下,尝试用run方式安装下cuda9.0,看能否解决我的问题。cuda9.2要是用起来,tensorflow都要编译,还有许多别的牵扯。重装系统也是下下策,以后有新的操作我会发博客,希望能找到这个问题的原因。

以上内容是历史,下面开始正式的安装。首先把原来的cuda9清除,remove cuda,autoremove和purge nvidia*等就不说了,记得把apt的source list有关的cuda本地和ppa的更新列表也先清除,如rm /etc/apt/sources.list.d/graphics-drivers-ubuntu-ppa-bionic.list等。如果原来都没搞过,自然也就不用清除。如果有cuda的补丁也删除,如sudo apt remove cuda-repo-ubuntu1704-9-0-local-cublas-performance-update。

以上清除步骤完成后,主要是run文件安装cuda的步骤了。我下载的run文件包括补丁如下:

下面的安装步骤是参考的官方文档,地址为:

https://developer.download.nvidia.com/compute/cuda/9.0/Prod/docs/sidebar/CUDA_Installation_Guide_Linux.pdf

实际上,没有完全达到文档要求,比如gcc版本我用的6.4比要求的6.3高一点,内核我用的4.15也比4.9高一点。其实这些应该没影响,因为以前就这么做的。如果非要完全按照文档,那就没法搞了,因为直到今天(2018-09-15),9.2的cuda上都没列出18.04版本Ubuntu对应的包。如下是证明:

扫描二维码关注公众号,回复: 3629073 查看本文章

不多说了,毕竟是出问题尝试解决,只能走一步算一步了。

如下,先禁用nouveau驱动:

sudo vim /etc/modprobe.d/blacklist-nouveau.conf

内容:

blacklist nouveau
options nouveau modeset=0

接着更新内核:

sudo update-initramfs -u

接着重启系统,执行下面的命令:

sudo bash cuda_9.0.176_384.81_linux.run

按照过程中各种接受,然而出了问题:

The driver installation is unable to locate the kernel source. Please make sure that the kernel source packages are installed and set up correctly.

搜索一堆,说内核不匹配,要降级,感觉风险大,没有做。而是在没有nvidia驱动ppa的情况下,直接:

sudo apt install nvidia-384

安装后重启,nvidia-smi仍然不能正常工作,所以单独安装cuda工具箱,但是不用run里面的驱动,也就是:

You are attempting to install on an unsupported configuration. Do you wish to continue?
(y)es/(n)o [ default is no ]: y

Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 384.81?
(y)es/(n)o/(q)uit: n

Install the CUDA 9.0 Toolkit?
(y)es/(n)o/(q)uit: y

Enter Toolkit Location
 [ default is /usr/local/cuda-9.0 ]: y

这样安装完成后重启,一切正常了,图形界面也ok了:

dww@hp-server2:~$ nvidia-smi
Sat Sep 15 10:52:21 2018
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 390.48                 Driver Version: 390.48                    |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 108...  Off  | 00000000:21:00.0  On |                  N/A |
|  0%   52C    P0    60W / 250W |    191MiB / 11144MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
|   1  GeForce GTX 108...  Off  | 00000000:2D:00.0 Off |                  N/A |
|  0%   36C    P8    11W / 250W |      2MiB / 11178MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    0      1817      G   /usr/lib/xorg/Xorg                           105MiB |
|    0      1860      G   /usr/bin/gnome-shell                          83MiB |
+-----------------------------------------------------------------------------+

下面进行总结:

在这台惠普Z6工作站上,为了cuda和图形界面的事情折腾了非常久。为什么别的平台没问题,我是有些怀疑这个工作站是不是软硬件和指令集什么的导致出一些匪夷所思的问题。会涉及什么呢?CPU一个,Intel(R) Xeon(R) Gold 6154 CPU @ 3.00GHz,18核心36线程。1080Ti两个,内存DDR4 ECC 128G,主板信息如下:

Handle 0x0005, DMI type 0, 26 bytes
BIOS Information
        Vendor: HP
        Version: P60 v01.61
        Release Date: 06/18/2018
        Address: 0xF0000
        Runtime Size: 64 kB
        ROM Size: 32 MB
        Characteristics:
                PCI is supported
                PNP is supported
                BIOS is upgradeable
                BIOS shadowing is allowed
                Boot from CD is supported
                Selectable boot is supported
                EDD is supported
                Print screen service is supported (int 5h)
                8042 keyboard services are supported (int 9h)
                Serial services are supported (int 14h)
                Printer services are supported (int 17h)
                ACPI is supported
                USB legacy is supported
                BIOS boot specification is supported
                Function key-initiated network boot is supported
                Targeted content distribution is supported
                UEFI is supported
        BIOS Revision: 1.61

Handle 0x0006, DMI type 1, 27 bytes
System Information
        Manufacturer: HP
        Product Name: HP Z6 G4 Workstation
        Version: Not Specified
        Serial Number: 
        UUID: 
        Wake-up Type: Power Switch
        SKU Number: 
        Family: 103C_53335X HP Workstation

deb安装的cuda9.0居然在普通用户权限下运行matlab的figure时候崩溃了,通过aptitude和apt两种方式重新安装后正常工作了一小会就又崩溃了,而且是再用这种重装的方式已经无法解决问题了,才有的这里的run方式处理。

这里先去除了ppa,直接用ubuntu自己的包,apt安装的nvidia-384,然后才安装run文件里提供的cuda9.0,但是没有选择其中的驱动。这样也就是用了ubuntu官方apt驱动和run文件cuda才解决了以上问题。至此驱动版本是390.48,虽然外边安装的是nvidia-384。

实话说,现在我还是没底,这个解决方案能撑多久,会不会又崩溃。只是当前暂时都没问题,tensorflow也可以跑,暂时放松下紧绷的心弦吧。

 

猜你喜欢

转载自blog.csdn.net/u012911347/article/details/82711005