解决Ubuntu20.04插入英伟达计算卡后无法开机问题-Ubuntu双显卡切换

news/2024/11/23 5:44:43/

解决Ubuntu20.04插入英伟达计算卡后无法开机问题-Ubuntu双显卡切换

  • 问题详述
    • 问题分析
    • 问题解决-ubuntu双显卡切换

问题详述

本人新配了一台个人使用的机器学习服务器。对环境配置可能有影响的硬件如下:华硕B660M-plus WIFI D4,intel i7-12700k,英伟达tesla p40计算卡。英伟达tesla p40计算卡(长相类似显卡)是插在pciex16上的专业机器学习计算卡,不具备hdmi等显示输出接口,区别于机器学习常见的GTX和RTX系列显卡,也区别于丽台图形渲染显卡。
  本人首先没有使用p40计算卡,仅使用cpu核显将机器点亮,装上了Win10+Ubuntu20双系统,两个系统一切运行良好。
  紧接着在靠近cpu的一个pciex16接口上插上了tesla p40计算卡。
  首先在win10上装了cuda10.2以及与之配套的驱动、cudnn、anaocnda、python、torch、torchvision,并成功运行了一个之前做过的机器学习项目,顺利完成。这说明卡和电脑本身都没问题。
  其次,准备在ubuntu环境下配置环境。但是这时ubuntu突然打不开了。具体情况是,在ubuntu的grub界面选择启动ubuntu,紧接着没有进入登录界面,而是会黑屏报错,错误是什么intel version、usb、hdaudio等等的外设问题(前面一个开机的秒数,然后是具体的错误内容这样),我又将tesla p40计算卡从主板上拔了下来,ubuntu又恢复如初,能够重新正常开机进入系统,没有报错。这显然说明上面所述的报错并非导致无法开机的致命错误,问题出在这张英伟达p40计算卡上。

问题分析

问题出在这个英伟达计算卡上面。因为专业的tesla等系列计算卡是没有图形输出的。如果你用3090之类的卡去搞机器学习,3090上是有一个hdmi接口的,可以直接连显示器,但是p40上除了外接8pin电源接口以外一个其他插口也没有。即便如此,ubuntu发现了这是一个英伟达的卡,他就会默认这就是系统的显卡,应该由这个显卡给显示器供应图形信号,却浑然不知这张卡没有任何输出图形信号的能力。
  在ubuntu grub中选择第一个选项启动ubuntu,会黑屏报错。我就选了第二个,advance option,然后进入了recovery mode,这样是可以成功进入图形化界面的,正常进入系统。首先我怀疑是新卡缺乏驱动,导致ubuntu笨蛋地将计算卡认作了显卡。于是我在blacklist.conf中禁用了一切英伟达驱动,然后安装了460版本的tesla p40驱动(安装tesla系列计算卡驱动的教程在网上一搜一大堆)。此时我在命令行中打nvidia-smi是能够正常出现计算卡的信息的。但是重启,选择正常启动ubuntu,还是报错。
  于是我认为,即便已经安装了p40的驱动,但ubuntu还是很笨蛋,把图形信号的处理任务全都送给了p40(没插计算卡的时候这一任务是i7-12700k的核显完成的),导致无法开机。那么,如何把正常的图形信号处理任务送给核显,但仍然使用p40搞机器学习计算呢?

问题解决-ubuntu双显卡切换

我在百度上能搜到的ubuntu切换双显卡的方法都过于陈旧,是去一个目录下面去找vgaswitheroo什么的东西,vga都被淘汰多少年了,我在他们说的相应目录下也根本没有找到vga什么的文件,也没有类似的文件。显然这个方法失效了。
  我的方法是:
  第一,开机ubuntu grub页面,仍然选择第一个,正常启动ubuntu,进入报错界面。但报错归报错,此时的内核仍然是正常运行的,只不过缺乏一个图形信号处理的方法才导致无法正常显示登录界面。按ctrl+alt+f2,可以进入一个tty界面,这是一个纯文字界面,不需要图形信号。
  第二,在tty界面,可以正常的进行全部命令行操作。输入用户名密码即可登录系统。需要安装一个英伟达出品的软件,prime-select。输入prime-select query即可显示当前优先使用哪个显卡。这个软件初次使用会报错没有安装,按照提示信息sudo apt-get install即可。然后sudo prime-select intel,这样就选择了intel的核心显卡作为了首选显卡。此时,重启机器,即可正常的进入ubuntu图形界面使用机器了。
  第三,使用上述方法后,进入系统,在命令行输入nvidia-smi,居然看不到显卡信息了,报错信息说驱动无法和计算卡通信了,没办法,在图形界面打开terminal,再sudo prime-select nvidia,将英伟达再设为首选,机器学习的那一套就又能用了,nvidia-smi也工作正常了,再去安装cuda,cudnn,pytorch什么的就随意了。
  最后,搞完机器学习,准备关机的时候,别忘了再sudo prime-select intel,如果不这样的话,下次开机图形界面还是起不来,又要去上面讲过的tty界面设置再重启。这就是ubuntu的笨蛋之处,哪怕这是一块完全没有图形输出能力的计算卡,也固执地要求人家去处理图形。如果你嫌麻烦,又恰好是linux爱好者,可以修改linux的开机关机配置文件,让机器自动去执行上述语句,也省的每次关机前手动做了。
  题外话:为什么要用带有图形界面的ubuntu desktop,而不是ubuntu server?因为这只是一台个人工作站,在调试涉及图像处理的AI项目时需要预览模型的处理效果。如果真的需要大规模跑模型,就直接用超算了。


http://www.ppmy.cn/news/305501.html

相关文章

Agisoft Metashape 立体显示 立体采集矢量数据

Agisoft Metashape 立体显示 立体采集矢量数据 文章目录 Agisoft Metashape 立体显示 立体采集矢量数据前言一、立体设置1.“常规”选项卡设置2.“导航”选项卡设置二、立体像对显示1选择显示模式2. 显示立体像对3. 锁定立体像对三、立体模式下的操控1缩放和漫游2平面和高程的控…

DeepFaceLab 教程之硬件配置要求

硬件 换脸软件出来也好几年了,但是目前依旧对硬件依赖比较大。想要在自己电脑上跑换脸软件就必须要一张显卡,想要轻松点,就必须要一张好显卡(今年搞一张好显卡不容易)。 显卡主要分N卡(英伟达)和…

英语4级技巧

真题链接:https://pan.baidu.com/s/1IZ0MmEpkANUm77ZLDmHs1A?pwd1111 提取码:1111 一、听力技巧 听到什么选什么 听发音 4级 90% 6级 60% 1、开头原则 2、顺序原则 1、单词发音/语音现象(连读、弱读、失去爆破) 反转词&#…

数据分析与数据处理

数据处理包括8个方面: 1.数据采集:采集所需的信息。 2.数据转换:把信息转换成机器能够接受的形式。 3.数据分组:指定编码,按有关信息进行有效的分组。 4.数据组织:整理数据或用某些方法安排数据&#x…

数据分析^

1. 近场电商主要模式 外卖前置仓: 美团买菜仓店一体 : 盒马社区团购 2. 数据分析模型 漏斗模型,AARRR,海盗模型 5大数据分析模型 8大数据分析思维 3. 数据可视化 高级特效可用PowerBI, Tableau 分类决策 复杂图表 图表综合 动态呈现 构成 树状图, 饼图,旭日图序列…

spss数据分析之如何计算维度​​​​​​​

spss数据分析之如何计算维度 我们都知道在自己问卷,很多时候都是一个问卷包含多各维度,那么如何对维度进行计算,只有把维度都计算出来了,才能进行后面的相关,回归分析等。 方法/步骤 在进行维度计算的前面需要对数据…

视频教程-Power Pivot商业智能数据分析(第1季 基础篇)-Office/WPS

Power Pivot商业智能数据分析(第1季 基础篇) Office培训讲师,51CTO金牌讲师,从2005开始从事Office培训至今。擅长Excel、Word、PowerPoint等软件的应用,著有《Power Query For Excel让工作化繁为简》、《加薪不加班&am…

数据分析

数据分析 1、概念 广义的数据分析包括狭义数据分析和数据挖掘。狭义的数据分析是指根据分析目的,采用对比分析、分组分析、交叉分析和回归分析等分析方法,对收集来的数据进行处理与分析,提取有价值的信息,发挥数据的作用&#x…