Ubuntu22.04 使用核显显示+独显工作+风扇声音过大的缓解办法

这篇具有很好参考价值的文章主要介绍了Ubuntu22.04 使用核显显示+独显工作+风扇声音过大的缓解办法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在使用教程安装好ubuntu22.04的显卡驱动后,在使用过程中发现2个问题。

问题1:当我运行pmemd.cuda,可以使得显卡使用率高达98%。但是这同样带来一个问题,显卡的温度会升高,导致显卡风扇狂转,声音太吵。

问题2:从开机后显卡就一直有/usr/lib/xorg/Xorg在运行。虽然只用了100MB左右,但是这无疑加重了显卡的负担。

Ubuntu22.04 使用核显显示+独显工作+风扇声音过大的缓解办法,Linux,linux,ubuntu

首先想要解决问题1:

    刚开始发现除了把工作站换个独立房间外,没有别的办法。但我还需要用这台机器做显示,就想再试试其他办法。

   发现可以通过NVIDIA X Server Settings 的 Thermal Settings,设置Enable GPU Fan Settings,手动设置风扇的转速。那么这样就可以曲线救国,可以把空调打开,室内温度保持冷一些,然后风扇转速设定为可以接受的范围。

解决问题2:

(1)首先使用  prime-select query

查询目前的显卡使用模式,一般是on-demand模式,即混合模式。此时的显示器接口是插在独显上的。

(2)然后使用  sudo prime-select intel

将显卡模式切换为Intel,即核显模式,等待命令行执行完毕。

(3)然后关机,并将显示器插口接到主板上,然后开机

(4)重启后使用nvidia-smi会出现如下错误:

NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.

(5)  执行 sudo prime-select on-demand,重新将模式设置为on-demand模式,发现nvidia-smi可以使用了!并且没有进程占用,输出如下:

Ubuntu22.04 使用核显显示+独显工作+风扇声音过大的缓解办法,Linux,linux,ubuntu

!!!然而,在我重启后发现使用的还是N卡。。。。。

折腾无果后,

    我尝试在上述第(4)步时,把驱动注册进入内核sudo dkms install -m nvidia -v 535.104.05 ,然而结果还是一样。然后我决定直接在这一步重装显卡,并参考该链接,看看问题能不能解决。于是令人无语(习以为常)的事情发生了。。。

    首先重新安装之前下载好的驱动程序.sh,直接报 ERROR: An error occurred while performing the step: "Building kernel modules" 的错误。于是参考该链接,想着删除高版本的内核,让低版本生效,但是我删除最高版本时,报删除失败。。。于是人开始方了,我想如果此时重启,那么如果还是按照这个最高版本的内核启动,如果是删除了部分文件(虽然是刚开始就报failed了,应该没有删除文件),那么岂不是无法正常启动?于是我尝试先恢复刚才删除的内核——好在显示重装成功。

    此时我发现了这个链接,可以在启动的时候设置进入grub页面,然后手动选择启动的内核版本。如果是这样,那岂不是我安装多少个内核都没问题啦,也可以放心更新,毕竟可以随时切换!(内核更新后把老驱动注册进入新的内核;如果需要重装老驱动,那么就先切换到与该驱动程序对应的内核,安装成功后再切换到新内核,然后再把驱动注册进新内核;如果需要装新驱动,那么直接使用最新的内核即可(这个还需要验证)

具体过程如下,

    我的系统内核本来是下面这样的,刚开始的时候我推测最低版本6.2.0-26是当时下载的NVIDIA显卡的对应内核版本。但是它deinstall了
mrc@mrc-Precision-3660:~/Downloads$ sudo dpkg --get-selections |grep linux-image
linux-image-6.2.0-26-generic            deinstall
linux-image-6.2.0-33-generic            install
linux-image-6.2.0-34-generic            install

    于是我执行下面这个命令将其重新安装
sudo apt-get install linux-image-6.2.0-26-generic

    为了更稳妥,我直接执行sudo apt-get upgrade linux-image-generic,执行这个命令可以安装最新的内核

    两条命令都执行完之后是这样的:

mrc@mrc-Precision-3660:~$ sudo dpkg --get-selections |grep linux-image
linux-image-5.15.0-86-generic            install
linux-image-6.2.0-26-generic            install
linux-image-6.2.0-33-generic            install
linux-image-6.2.0-34-generic            install
linux-image-generic                install
 

    因此,我可以一个一个内核试一下,找出哪个版本是和我当前的显卡驱动程序.sh是对应的。

    首先,使用6.2.0-26后报这个错误:

  ERROR: Unable to find the kernel source tree for the currently running kernel.  Please make sure you have installed the kernel source files for your
  kernel and that they are properly configured; on Red Hat Linux systems, for example, be sure you have the 'kernel-source' or 'kernel-devel' RPM     
  installed.  If you know the correct kernel source files are installed, you may specify the kernel source path with the '--kernel-source-path'
  command line option
    解决该问题:sudo apt-get install linux-headers-$(uname -r)      参考

    然而,通过上述命令解决后还是不行。

    然后换 linux-image-5.15.0-86-generic,

    还是碰到上述”kernel source tree“的错误,但是通过sudo apt-get install linux-headers-$(uname -r)   可以解决!  

    这说明我的显卡驱动程序 NVIDIA-Linux-x86_64-535.104.05.run 的对应内核版本为: linux-image-5.15.0-86-generic

  安装到最后出现   ERROR: Unable to load the 'nvidia-drm' kernel module.,但是网上查了一下,说到这之后其实没问题,其实驱动已经安装好了。(最后我发现只要我切换到使用独显显示:sudo prime-select nvidia,驱动就可以正常安装,搞不懂为什么)

总结:

(1)不要轻易删除显卡驱动或者系统内核

(2)如果删除了驱动,需要重装。此时有两种解决办法:

  • 一种是更新系统内核到最新版,然后下载最新版显卡驱动(应该是对应的,不过这种方式我没有试)
  • 另一种方式是启动时,在grub界面选择当时下载的驱动程序.sh 所对应的系统内核版本(进入grub需要电脑在身边才能看;如果电脑不在身边,需要更改grub配置文件中的内核启动顺序,方法自行百度),然后正常安装。最好是在安装驱动的时候就记住驱动与系统内核的对应信息,以便不时之需。

(3)如果不小心卸载了系统内核,趁着有网络赶紧下载回来。反正可以随时切换内核,为什么要卸载呢,留着呗。。。

燃鹅,到目前位置,问题2依然无解。

############################################################################

2023-11-22更新:

    系统运行一段时间后屏幕突然黑屏,远程连接后使用nvidia-smi后报错:

     Unable to determine the device handle for GPU0000:01:00.0: Unknown Error   

    原因可能是因为驱动程序有问题,需要重新安装(真正的原因见后文)。据说如果想要板载做显示,那么安装驱动的时候,提示更新显示配置文件(那个automaticlly update x configuration)的时候 选择no

    重新安装的时候发现,问题2有一种垃圾解(曲线救国又出现了)。。。      参考:https://zhuanlan.zhihu.com/p/648606141

    那就是使用主板显卡显示的时候,开机后运行sudo prime-select nvidia或者sudo prime-select on-demand,使得可以识别到显卡。然后关机前运行sudo prime-select intel。

 不过这种方式似乎无法通过图形界面调控显卡风扇转速。可能coolgpus有用,需要测试(坑。。。发现coolgpus只有在无X-server下才能正常使用,有图形界面就有X-server)。

    终结:可以通过以下命令行的方式控制风扇转速!    

    nvidia-settings -a GPUFanControlState=1 -a GPUTargetFanSpeed=60    #似乎只能在打开了nvidia-settings的时候该命令才有效?非也。

指定某一个显卡或风扇: nvidia-settings -a "[gpu:0]/GPUFanControlState=1" -a "[fan:0]/GPUTargetFanSpeed=100"

GPUFanControlState代表控制,1是手动,0是自动
GPUTargetFanSpeed是风扇转速

   改成自动控制转速:nvidia-settings -a GPUFanControlState=0

    重要参考:https://forums.developer.nvidia.com/t/how-to-set-fanspeed-in-linux-from-terminal/72705/10?page=2

#########################################################################

   燃鹅,到目前为止,问题:“Unable to determine the device handle for GPU0000:01:00.0: Unknown Error ”依然未解决。   

   查阅资料发现,其实真正的原因是设备过热或者缺电。参考1,参考2,参考3,参考4

可能的解决方案有(按照实施的难易程度),挨个试一下:

    (1)检查GPU温度    #发现GPU温度没问题

    (2)拔插电源,或者更换主机电源线      #拔插了一下,运行了20几个小时后down掉了;更换主机电源线也很快down掉了。

    (3)“you should check for peak power issues first, preventing boost using “nvidia-smi -lgc 300,1500” on all gpus.”    

              “After setting ‘nvidia-smi -lgc 300,1500’, it runs stably for 20hours. It does seem to be peak power issues.”    #使用这个方案,也很快down掉了。

    (4)”I finished by changing a different slot.“——在插槽中重新安装显卡,并可尝试不同的插槽       #交给代理商解决,发现重新安装显卡,更换显卡电源线也不行

    (5)这时候怀疑是显卡本身的问题,代理商试着换了一块3090到机器上,测试了两天发现都没问题。于是向总部申请更换了一个新的4090。。。

    更换显卡后问题解决。

##########################################################################################################################################

   终结:通过调低风扇转速来降噪的方式虽然可以直接解决问题,但是由于显卡温度无法与风扇速度匹配,可能会造成一些隐患,因此需要更加有效的解决方式从根本上解决问题。

     这里有一种新的思路:可以通过降低显卡功耗的方式,间接地调低风扇转速~

sudo nvidia-smi  -pm 1    #打开持久模式      ~不打开也行
sudo nvidia-smi -pl  250      #设定功率为指定值,这里是250W(4090的默认功率是450W)
#通过指定不同的功率,测试MD模拟的速度,比如:

Ubuntu22.04 使用核显显示+独显工作+风扇声音过大的缓解办法,Linux,linux,ubuntu

    在默认450W的时候,程序最多用到280W,此时每天跑278ns(310 s/ns),风扇转速为72%左右

    在指定250W的时候,程序最多用到250W,此时每天跑268ns(321 s/ns);但是此时风扇转速为64%左右

    在指定225W的时候,程序最多用到225W,此时每天跑260ns(331 s/ns);但是此时风扇转速为57%左右

    在指定210W的时候,程序最多用到210W,此时每天跑254ns(339 s/ns);但是此时风扇转速为52%左右       #声音可以接受

    在指定200W的时候,程序最多用到200W,此时每天跑249ns(346 s/ns);但是此时风扇转速为50%左右       #声音很小,完全可以接受

参考1,参考2

参考:

https://blog.csdn.net/qq_41983842/article/details/129131044

https://blog.csdn.net/liuyang_xyz/article/details/120684134

https://blog.csdn.net/u011304615/article/details/70919711文章来源地址https://www.toymoban.com/news/detail-742258.html

到了这里,关于Ubuntu22.04 使用核显显示+独显工作+风扇声音过大的缓解办法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ubuntu22.04 安装gazebo遇到的坑(无法打开显示界面)

    1.终端输入gazebo,无报错,也无显示界面 解决方法 :应用中找到system monitor,找到gzserver,右键kill 2.安装软件包遇到的错误:dpkg: error processing archive /var/cache/apt/archives/libignition-utils1-dev_1.5.1-1~jammy_amd64.deb (–unpack),trying to overwrite ‘/usr/include/ignition/utils1/ignition/utils/Environment.hh’

    2024年01月21日
    浏览(43)
  • 【ubuntu22.04】解决VMware workstation共享文件夹在Ubuntu虚拟机不显示的问题

    我按照网络上的教程,在VMware workstation设置了共享文件夹,但是在我的ubuntu虚拟机内无法显示所设置的共享文件夹,经过网上所谓的解决方案的一顿操作后,共享文件夹能出现了,但是开机后会消失。 我通过尝试重装VM tools解决了该问题。 首先,我们按照网络上所谓的解决方

    2024年02月13日
    浏览(69)
  • ubuntu22.04桌面完整版配置WiFi方法(修改磁盘文件方式--不需要显示器)

    打开这个文件: /etc/network/interfaces 一般来说这个文件是无法修改的,但是可以通过在/etc/network/文件夹找一个叫做interfaces.d的文件夹,(正常的Ubuntu系统跟这个树莓派的Ubuntu系统不一样,正常系统没有这个interfaces文件) 随便在这个文件夹里面建立一个文件例如net----注意了这个

    2024年02月06日
    浏览(47)
  • Ubuntu 22.04安装使用easyconnect

    百度百科,EasyConnect能够帮助您在办公室之外使用公司内网的所有系统及应用。在您的公司部署深信服远程应用发布解决方案后,您的公司所有业务系统及应用都可以轻松迁移至移动互联网上。您可以通过手机、PAD等智能移动终端随时随地开展您的业务,尽享移动业务带来的

    2024年01月17日
    浏览(43)
  • [Ubuntu 22.04] Docker安装及使用

    使用脚本自动安装 安装完成后验证 1. 拉取镜像并启动容器 注 :OPTION是参数,TAG是标签(版本号) 以Ubuntu 20.04为例,如下: 2. 创建容器 镜像拉取完成后,可以使用以下命令创建并启动一个基于 Ubuntu 20.04 镜像的容器 这将创建一个交互式的终端会话,可以在 Ubuntu 20.04 容器内

    2024年01月17日
    浏览(48)
  • WSL安装与使用(Ubuntu22.04)

    本文主要记录Windows WSL的安装和使用过程,内容包括WSL安装过程、WSL安装Ubuntu、Ubuntu更换镜像源,Ubuntu安装Dcoker并配置等步骤。 Windows Subsystem for Linux(简称WSL)是一个在Windows 1011上能够运行原生Linux二进制可执行文件(ELF格式)的兼容层。它是由微软与Canonical公司合作开发,

    2024年02月08日
    浏览(48)
  • ubuntu22.04编译安装使用gstreamer指南

    ubuntu发行版22.04,该发行版内置Gstreamer1.20.1,gstreamer源码最新版本为1.20.3,差距不大 下载gstreamer源码 安装git 下载gstreamer 安装meson gstreamer1.60以后(不包含1.60),使用meson+ninja来构建 安装glib gstreamer是基于glib-gobject来实现的 安装libsoup 安装libunwind 安装libdw 安装g-ir-scanner 系统中

    2024年02月05日
    浏览(74)
  • 全网最详细搭建Win10+WSL2+Ubuntu-22.04LTS+CUDA+Xfce4+noVNC个人工作站

    本文主要解决的问题点: win10下使用Ubuntu系统 解决WSL默认不支持systemD的BUG 物理机显卡可在Ubuntu系统直通使用 Ubuntu系统界面图形可视化 图形界面汉化 Ubuntu系统下使用拼音输入法 不需要物理机安装任何软件即可通过web直接访问Ubuntu 配置Firefox和Pycharm 解决WSL下的noVNC剪贴板不能

    2024年02月07日
    浏览(46)
  • Ubuntu22.04虚拟机配置及使用代理工具

    特别注意:本教程基于VMware虚拟机,安装Ubuntu22.04。其他类型虚拟机及Linux其他版本配置相似但有所不同。 1.1 打开虚拟机设置。 或 1.2 选择硬件选项卡-网络适配器,在网络连接处选择“NAT模式”。 2.1 确认IP地址 开启虚拟机系统后,查看主机分配的虚拟机IP地址。此时可以看

    2023年04月11日
    浏览(42)
  • Ubuntu 22.04 Ubuntu 22.10 解决按照官方教程无法使用搜狗输入法

    Ubuntu 22.04 Ubuntu 22.10 安装了搜狗输入法,主要步骤就做了两步,一个是: 另一个就是下载搜狗的deb文件,并使用 dpkg -i 安装该文件。 后来还是按照官网操作指导: https://shurufa.sogou.com/linux/guide 将所有步骤都做了,其中 这两个才是关键, 按照 官方教程 安装搜狗输入法后依然

    2024年02月11日
    浏览(66)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包