在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设置显卡风扇转速