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

相关文章

RedisTemplate默认序列化方式显示中文乱码的解决

《RedisTemplate默认序列化方式显示中文乱码的解决》本文主要介绍了SpringDataRedis默认使用JdkSerializationRedisSerializer导致数据乱码,文中通过示... 目录1. 问题原因2. 解决方案3. 配置类示例4. 配置说明5. 使用示例6. 验证存储结果7.

idea中project的显示问题及解决

《idea中project的显示问题及解决》:本文主要介绍idea中project的显示问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录idea中project的显示问题清除配置重China编程新生成配置总结idea中project的显示问题新建空的pr

Ubuntu上手动安装Go环境并解决“可执行文件格式错误”问题

《Ubuntu上手动安装Go环境并解决“可执行文件格式错误”问题》:本文主要介绍Ubuntu上手动安装Go环境并解决“可执行文件格式错误”问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未... 目录一、前言二、系统架构检测三、卸载旧版 Go四、下载并安装正确版本五、配置环境变量六、验证安装七、常见

ubuntu如何部署Dify以及安装Docker? Dify安装部署指南

《ubuntu如何部署Dify以及安装Docker?Dify安装部署指南》Dify是一个开源的大模型应用开发平台,允许用户快速构建和部署基于大语言模型的应用,ubuntu如何部署Dify呢?详细请... Dify是个不错的开源LLM应用开发平台,提供从 Agent 构建到 AI workflow 编排、RA

ubuntu系统使用官方操作命令升级Dify指南

《ubuntu系统使用官方操作命令升级Dify指南》Dify支持自动化执行、日志记录和结果管理,适用于数据处理、模型训练和部署等场景,今天我们就来看看ubuntu系统中使用官方操作命令升级Dify的方... Dify 是一个基于 docker 的工作流管理工具,旨在简化机器学习和数据科学领域的多步骤工作流。

如何在Ubuntu上安装NVIDIA显卡驱动? Ubuntu安装英伟达显卡驱动教程

《如何在Ubuntu上安装NVIDIA显卡驱动?Ubuntu安装英伟达显卡驱动教程》Windows系统不同,Linux系统通常不会自动安装专有显卡驱动,今天我们就来看看Ubuntu系统安装英伟达显卡... 对于使用NVIDIA显卡的Ubuntu用户来说,正确安装显卡驱动是获得最佳图形性能的关键。与Windo

双系统电脑中把Ubuntu装进外接移动固态硬盘的全过程

《双系统电脑中把Ubuntu装进外接移动固态硬盘的全过程》:本文主要介绍如何在Windows11系统中使用VMware17创建虚拟机,并在虚拟机中安装Ubuntu22.04桌面版或Ubunt... 目录一、首先win11中安装vmware17二、磁盘分区三、保存四、使用虚拟机进行系统安装五、遇见的错误和解决

CentOS和Ubuntu系统使用shell脚本创建用户和设置密码

《CentOS和Ubuntu系统使用shell脚本创建用户和设置密码》在Linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设置密码,本文写了一个shell... 在linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设

电脑显示mfc100u.dll丢失怎么办?系统报错mfc90u.dll丢失5种修复方案

《电脑显示mfc100u.dll丢失怎么办?系统报错mfc90u.dll丢失5种修复方案》最近有不少兄弟反映,电脑突然弹出“mfc100u.dll已加载,但找不到入口点”的错误提示,导致一些程序无法正... 在计算机使用过程中,我们经常会遇到一些错误提示,其中最常见的就是“找不到指定的模块”或“缺少某个DL

Ubuntu中远程连接Mysql数据库的详细图文教程

《Ubuntu中远程连接Mysql数据库的详细图文教程》Ubuntu是一个以桌面应用为主的Linux发行版操作系统,这篇文章主要为大家详细介绍了Ubuntu中远程连接Mysql数据库的详细图文教程,有... 目录1、版本2、检查有没有mysql2.1 查询是否安装了Mysql包2.2 查看Mysql版本2.