Ubuntu 18.04 cuda 9.0 双1080TI 只显示一张

2024-08-21 20:08

本文主要是介绍Ubuntu 18.04 cuda 9.0 双1080TI 只显示一张,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

追加:【已解决,有一张显卡硬件不稳定】

参考我的最终记录:

https://blog.csdn.net/u012911347/article/details/82854018

这又是一篇关于cuda和nvidia的博客,暂时解决了显卡就只显示一张和cuda无法使用的问题。

如果你想了解更多,可以看看我前面几篇博客记录。大体上就是,ubuntu 18.04和cuda 9.0 在390.48驱动下,突然崩溃了。接着一番修复,apt,aptitude,run文件等,好了又坏,坏了又修。最终是去除ppa,apt安装ubuntu官方源的nvidia-384,接着cuda 9.0的run文件运行,选择装cuda toolkit却不重新用run文件内提供的驱动覆盖系统的。这样正常工作了两天。

今天早上一看,又出了问题,nvidia-smi只显示了一个,另一个是ERR:

Mon Sep 17 09:49:55 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 |
|ERR!   44C    P8   ERR! / 250W |    295MiB / 11144MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
|   1  GeForce GTX 108...  Off  | 00000000:2D:00.0 Off |                  N/A |
|  0%   36C    P8    10W / 250W |      2MiB / 11178MiB |      0%      Default |
+-------------------------------+----------------------+----------------------++-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    0      1817      G   /usr/lib/xorg/Xorg                            40MiB |
|    0      1860      G   /usr/bin/gnome-shell                          83MiB |
|    0      2088      G   /usr/lib/xorg/Xorg                           146MiB |
|    0      2240      G   /usr/bin/gnome-shell                           4MiB |
|    0      2254      G   /opt/teamviewer/tv_bin/TeamViewer             14MiB |
+-----------------------------------------------------------------------------+

实话说我比系统更崩溃,出问题就各种问题,如nvidia-persistenced,如deviceQuery的FAIL,如nvidia-smi显示少一张。对这台工作站的cuda我已经折腾了多次,却没有一个稳定有效的方案,也不知道问题出在哪里。比如这一次,apt安装的nvidia-384,run文件的cuda9.0,没有打cuda9.0的四个补丁,当前显示驱动为390.48。好好工作两天,我都以为解决问题了,这一大早又是出问题。看deviceQuery的信息如下:

./deviceQuery Starting...CUDA Device Query (Runtime API) version (CUDART static linking)cudaGetDeviceCount returned 3
-> initialization error
Result = FAIL

这条信息,returned 3都搜不到解决办法。而当前情况下,我注意到Xorg的cpu占用特别高:

2088 root      20   0  504212 140412  93340 R 100.3  0.1 979:58.25 /usr/lib/xorg/Xorg vt2 -displayfd 3 -auth /run/user/1000/gdm/Xauthority -background none -noreset -keeptty -verbose 3

这也为后面的解决办法提供了一些思路。接着还是不死心,又重新启动,发现deviceQuery的输出变了:

deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 9.1, CUDA Runtime Version = 9.0, NumDevs = 1
Result = PASS

原来nvidia-smi显示一张,但是query没有通过。现在query通过了,虽然显示少了一个,NumDevs是1,但是nvidia-smi却一个没有了:

Mon Sep 17 10:01:06 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:2D:00.0 Off |                  N/A |
|  0%   37C    P5    23W / 250W |      0MiB / 11178MiB |      3%      Default |
+-------------------------------+----------------------+----------------------++-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

我的天,完全不知道如何获取更准确的信息。在搜索的过程中,得知nvidia-smi的smi就是System Management Interface,nvidia-smi后面跟个数字应该是grid驱动版本号,后面driver version应该是显卡驱动版本号,二者分开写,有时候也不一样。这里顺便记录以上两点。

查看日志以前就知道syslog,现在也可以看Xorg的log,硬件有关的可以看dmesg。比如我这里看到的有关显卡的日志是:

[    4.894342] NVRM: GPU at PCI:0000:21:00: GPU-7ce0c4e1-86a8-fe64-288b-da563f52cc95
[    4.894344] NVRM: GPU Board Serial Number:
[    4.894346] NVRM: Xid (PCI:0000:21:00): 62, 13adb(75b8) 00000000 00000000
[   51.725515] NVRM: Xid (PCI:0000:21:00): 32, Channel ID 00000000 intr 80042000
[   51.736863] NVRM: RmInitAdapter failed! (0x26:0xffff:1123)
[   51.736926] NVRM: rm_init_adapter failed for device bearing minor number 0
[   56.665188] NVRM: Xid (PCI:0000:21:00): 32, Channel ID 00000000 intr 80002000
[   56.671764] NVRM: RmInitAdapter failed! (0x26:0xffff:1123)
[   56.671787] NVRM: rm_init_adapter failed for device bearing minor number 0
[   61.553430] NVRM: Xid (PCI:0000:21:00): 32, Channel ID 00000000 intr 80002000
[   61.560047] NVRM: RmInitAdapter failed! (0x26:0xffff:1123)
[   61.560070] NVRM: rm_init_adapter failed for device bearing minor number 0
[   66.293581] NVRM: Xid (PCI:0000:21:00): 32, Channel ID 00000000 intr 80002000
[   66.300253] NVRM: RmInitAdapter failed! (0x26:0xffff:1123)
[   66.300276] NVRM: rm_init_adapter failed for device bearing minor number 0
[   71.055603] NVRM: Xid (PCI:0000:21:00): 32, Channel ID 00000000 intr 80002000
[   71.066633] NVRM: RmInitAdapter failed! (0x26:0xffff:1123)
[   71.066682] NVRM: rm_init_adapter failed for device bearing minor number 0
[   71.626922] usb 1-4: USB disconnect, device number 3
[   75.959977] NVRM: Xid (PCI:0000:21:00): 32, Channel ID 00000000 intr 80002000
[   75.971194] NVRM: RmInitAdapter failed! (0x26:0xffff:1123)
[   75.971228] NVRM: rm_init_adapter failed for device bearing minor number 0

一直看到底,就是这个21:00.0出问题,而2D:00.0这个卡就没问题,这样也对应了前面nvidia-smi显示一张的记录,nvidia-smi中的bus-id可以看到该卡。

这样就比较诡异了,一张卡可以,query也能通过,按理说驱动和cuda都应该是没问题的。另一个却初始化失败,且又有Xorg超高的cpu使用率,所以就怀疑起来是不是接显示器的原因。还别说,把显示器线拔了,重启,真的就好了。

Mon Sep 17 10:31:38 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 Off |                  N/A |
|  0%   47C    P8    10W / 250W |     19MiB / 11170MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
|   1  GeForce GTX 108...  Off  | 00000000:2D:00.0 Off |                  N/A |
|  0%   36C    P8    10W / 250W |      2MiB / 11178MiB |      0%      Default |
+-------------------------------+----------------------+----------------------++-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    0      1675      G   /usr/lib/xorg/Xorg                             9MiB |
|    0      1723      G   /usr/bin/gnome-shell                           7MiB |
+-----------------------------------------------------------------------------+

抓紧试试:

2018-09-17 11:05:17.424097: I tensorflow/core/common_runtime/placer.cc:886] a: (Const)/job:localhost/replica:0/task:0/device:GPU:0
b: (Const): /job:localhost/replica:0/task:0/device:GPU:0
2018-09-17 11:05:17.424115: I tensorflow/core/common_runtime/placer.cc:886] b: (Const)/job:localhost/replica:0/task:0/device:GPU:0
d: (Const): /job:localhost/replica:0/task:0/device:GPU:1
2018-09-17 11:05:17.424133: I tensorflow/core/common_runtime/placer.cc:886] d: (Const)/job:localhost/replica:0/task:0/device:GPU:1
e: (Const): /job:localhost/replica:0/task:0/device:GPU:1
2018-09-17 11:05:17.424151: I tensorflow/core/common_runtime/placer.cc:886] e: (Const)/job:localhost/replica:0/task:0/device:GPU:1
[[22. 28.][49. 64.]]
[[22. 28.][49. 64.]]

两张卡,真的都没问题了。

下面进行总结:

各种方式都尝试了,就差最下下策的重装系统了,灵机一动,不接显示器的情况下,两张卡都ok了。而且,如果你看到我前几篇博客介绍就知道,一开始是Matlab的figure画图导致cuda和驱动崩溃的。所以我现在已经比较能确定问题了,是显示驱动有关部分不稳定或者有bug,接显示器的时候导致一个或者俩卡都无法正常初始化。一个nvidia驱动,一个Xorg的图形界面系统,总感觉很容易崩,也不知道谁的锅。

附录一,显示器有关信息:

戴尔P2715Q 4k显示器,以及应该是原装的DP连接线,其中mini dp接显示器,标准dp接1080ti显卡上。实际使用设置了2560*1440的分辨率。

附录二,吐槽:

算是为cuda诡异的问题提供了一个思路,不妨不接显示器。能正常工作多久拭目以待,后面有问题我还会跟进博客。

这篇关于Ubuntu 18.04 cuda 9.0 双1080TI 只显示一张的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1094160

相关文章

在Ubuntu上打不开GitHub的完整解决方法

《在Ubuntu上打不开GitHub的完整解决方法》当你满心欢喜打开Ubuntu准备推送代码时,突然发现终端里的gitpush卡成狗,浏览器里的GitHub页面直接变成Whoathere!警告页面... 目录一、那些年我们遇到的"红色惊叹号"二、三大症状快速诊断症状1:浏览器直接无法访问症状2:终端操作异常

Ubuntu向多台主机批量传输文件的流程步骤

《Ubuntu向多台主机批量传输文件的流程步骤》:本文主要介绍在Ubuntu中批量传输文件到多台主机的方法,需确保主机互通、用户名密码统一及端口开放,通过安装sshpass工具,准备包含目标主机信... 目录Ubuntu 向多台主机批量传输文件1.安装 sshpass2.准备主机列表文件3.创建一个批处理脚

C#实现SHP文件读取与地图显示的完整教程

《C#实现SHP文件读取与地图显示的完整教程》在地理信息系统(GIS)开发中,SHP文件是一种常见的矢量数据格式,本文将详细介绍如何使用C#读取SHP文件并实现地图显示功能,包括坐标转换、图形渲染、平... 目录概述功能特点核心代码解析1. 文件读取与初始化2. 坐标转换3. 图形绘制4. 地图交互功能缩放

Ubuntu如何升级Python版本

《Ubuntu如何升级Python版本》Ubuntu22.04Docker中,安装Python3.11后,使用update-alternatives设置为默认版本,最后用python3-V验证... 目China编程录问题描述前提环境解决方法总结问题描述Ubuntu22.04系统自带python3.10,想升级

Windows环境下解决Matplotlib中文字体显示问题的详细教程

《Windows环境下解决Matplotlib中文字体显示问题的详细教程》本文详细介绍了在Windows下解决Matplotlib中文显示问题的方法,包括安装字体、更新缓存、配置文件设置及编码調整,并... 目录引言问题分析解决方案详解1. 检查系统已安装字体2. 手动添加中文字体(以SimHei为例)步骤

Ubuntu 24.04启用root图形登录的操作流程

《Ubuntu24.04启用root图形登录的操作流程》Ubuntu默认禁用root账户的图形与SSH登录,这是为了安全,但在某些场景你可能需要直接用root登录GNOME桌面,本文以Ubuntu2... 目录一、前言二、准备工作三、设置 root 密码四、启用图形界面 root 登录1. 修改 GDM 配

如何在Ubuntu 24.04上部署Zabbix 7.0对服务器进行监控

《如何在Ubuntu24.04上部署Zabbix7.0对服务器进行监控》在Ubuntu24.04上部署Zabbix7.0监控阿里云ECS服务器,需配置MariaDB数据库、开放10050/1005... 目录软硬件信息部署步骤步骤 1:安装并配置mariadb步骤 2:安装Zabbix 7.0 Server

Ubuntu如何分配​​未使用的空间

《Ubuntu如何分配​​未使用的空间》Ubuntu磁盘空间不足,实际未分配空间8.2G因LVM卷组名称格式差异(双破折号误写)导致无法扩展,确认正确卷组名后,使用lvextend和resize2fs... 目录1:原因2:操作3:报错5:解决问题:确认卷组名称​6:再次操作7:验证扩展是否成功8:问题已解

SpringSecurity显示用户账号已被锁定的原因及解决方案

《SpringSecurity显示用户账号已被锁定的原因及解决方案》SpringSecurity中用户账号被锁定问题源于UserDetails接口方法返回值错误,解决方案是修正isAccountNon... 目录SpringSecurity显示用户账号已被锁定的解决方案1.问题出现前的工作2.问题出现原因各

Ubuntu设置程序开机自启动的操作步骤

《Ubuntu设置程序开机自启动的操作步骤》在部署程序到边缘端时,我们总希望可以通电即启动我们写好的程序,本篇博客用以记录如何在ubuntu开机执行某条命令或者某个可执行程序,需要的朋友可以参考下... 目录1、概述2、图形界面设置3、设置为Systemd服务1、概述测试环境:Ubuntu22.04 带图