自学内容网 自学内容网

Ubuntu下手动设置Nvidia显卡风扇转速

在Ubuntu下,您可以使用 NVIDIA显卡驱动程序提供的工具手动调整风扇转速。以下是详细步骤: 


1. 确保已安装NVIDIA显卡驱动

确保系统已经安装了正确的NVIDIA驱动:

nvidia-smi

如果没有输出驱动信息,请先安装驱动:

sudo ubuntu-drivers autoinstall
sudo reboot

2. 启用风扇控制

默认情况下,NVIDIA驱动不会开放风扇控制,需要手动启用。

编辑X配置文件:

  • 打开或创建 /etc/X11/xorg.conf 文件:
sudo nano /etc/X11/xorg.conf
  • Device 部分添加以下内容:
Section "Device"
    Identifier "NVIDIA Card"
    Driver "nvidia"
    Option "Coolbits" "4"
EndSection

说明Coolbits 的值 4 启用手动风扇控制。如果想启用同时支持超频(Coolbits = 12),可以将值改为 12

  • 保存并退出后重启系统:
sudo reboot

3. 使用 nvidia-settings 调整风扇转速

3.1 安装 nvidia-settings 工具(如未安装):

sudo apt install nvidia-settings

3.2 打开 nvidia-settings

nvidia-settings

3.3 在 nvidia-settings 界面:

  • 进入 GPU 0 -> Thermal Settings。
  • 勾选 Enable GPU Fan Settings Override。
  • 调整滑块设置风扇转速。
  • 点击 Apply 应用设置。

4. 命令行方式设置风扇转速

如果需要用命令行调整风扇转速:

示例:

将风扇转速设置为 50%:

nvidia-settings -a "[gpu:0]/GPUFanControlState=1" -a "[fan:0]/GPUTargetFanSpeed=50"
参数说明:
  • GPUFanControlState=1:开启风扇控制。
  • GPUTargetFanSpeed=50:设置风扇转速为 50%。

查看更多选项:

nvidia-settings --query all

5. 自动化设置风扇转速(可选)

  • 创建脚本:

(1)创建脚本文件,例如 set-fan-speed.sh

nano ~/set-fan-speed.sh

(2)添加以下内容:

#!/bin/bash
nvidia-settings -a "[gpu:0]/GPUFanControlState=1"
nvidia-settings -a "[fan:0]/GPUTargetFanSpeed=50"

(3)保存并赋予执行权限:

chmod +x ~/set-fan-speed.sh
  • 设置开机启动:

(1)将脚本添加到开机启动任务:

crontab -e

(2)在文件末尾添加:

@reboot /bin/bash ~/set-fan-speed.sh

6.使用coolgpus脚本进行调节 (推荐)

https://github.com/andyljones/coolgpus

  • 安装coolgpus
pip install coolgpus
  • 使用用例:
# 将gpu风扇转速设置为99%
sudo $(which coolgpus) --speed 99 99

# 关闭设置
sudo $(which coolgpus)

# 或者也可以设置线性控制
# 这个模式下20℃以下转速为5%, 20-55℃之间转速为30%,依次类推
sudo $(which coolgpus) --temp 20 55 80 --speed 5 30 99
  • 如果需要将coolgpus脚本当作一个系统服务长期运行的话,如果你的服务器采用systemd管理server的话,可以在/etc/systemd/system/coolgpus.service创建模板
[Unit]
Description=Headless GPU Fan Control
After=syslog.target

[Service]
ExecStart=/home/ajones/conda/bin/coolgpus --kill 
Restart=on-failure
RestartSec=5s
ExecStop=/bin/kill -2 $MAINPID
KillMode=none 

[Install]
WantedBy=multi-user.target
  • 可以通过如下命令进行控制
sudo systemctl enable coolgpus
sudo systemctl start coolgpus

参考

1. ubuntu系统调节GPU风扇转速

2. Ubuntu下手动设置Nvidia显卡风扇转速_51CTO博客_bios设置显卡风扇转速


原文地址:https://blog.csdn.net/Lucy_wzw/article/details/143962956

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!