[other] [分享] ThinkPad P15v Gen3 AMD 版省电 & 挂起死机优化
Tofloor
poster avatar
Neil Gong(公)
deepin
8 hours ago
Author

首先声明:我是Linux 纯新手,正式用 Linux 办公才不到 4 个月。
机型:ThinkPad P15v Gen3
配置:AMD R7-6800H + NVIDIA T600 独显
系统:Linux Mint 22.3 (Zena)
内核:7.0.0-14-generic
日常只用来轻办公、浏览网页、写文档,完全用不到独显。
所以下面这套方案是:屏蔽独显常驻、让 T600 深度休眠,全程纯核显办公。
从今年 3 月份装 Linux 开始,一直被一个噩梦一样的问题折磨:
合盖挂起、开盖必黑屏死机。
期间翻遍论坛、问过豆包、DeepSeek、Gemeni 各种 AI,
尝试过无数偏方,硬关机强制重启几十次,磁盘日志全是异常,
一直没能根治,本来都打算放弃凑合着用了。
5月底去上海出差发现电池续航很短,回来后只想单纯降功耗、救电池续航(原来只能撑 2 小时),
折腾中偶然发现根源就在 NVIDIA 独显无法正常休眠。
顺着这个点一路深挖,不仅把续航从 2 小时干到接近 9 小时,
顺带把合盖黑屏死机的问题治愈了。

给同机型、同需求轻办公的朋友参考。

一、配置 NVIDIA 高阶电源管理

bash

运行

sudo tee /etc/modprobe.d/nvidia-power.conf <

二、禁用 NVIDIA 常驻后台

bash

运行

sudo systemctl stop nvidia-persistenced
sudo systemctl mask nvidia-persistenced
sudo pkill -9 nvidia-persistenced

三、强制 Xorg 只使用 AMD 核显,忽略 N 卡

bash

运行

sudo tee /etc/X11/xorg.conf.d/10-nvidia-ignore.conf <<'EOF'
Section "ServerFlags"
    Option "AutoAddGPU" "false"
EndSection
Section "Device"
    Identifier  "AMD"
    Driver      "amdgpu"
    BusID       PCI:102:0:0
    Option      "PrimaryGPU" "yes"
EndSection
EOF

四、全局默认强制所有程序走核显

bash

运行

sudo tee /etc/profile.d/nvidia-offload.sh <<'EOF'
export __GLX_VENDOR_LIBRARY_NAME=amdgpu
export LIBVA_DRIVER_NAME=radeonsi
export VDPAU_DRIVER=radeonsi
export __NV_PRIME_RENDER_OFFLOAD=0
EOF

操作后注销重新登录生效。

五、锁死 N 卡设备权限(防微信 / QQ 偷跑唤醒独显)

bash

运行

sudo tee /etc/systemd/system/nvidia-lock-perm.service <<'EOF'
[Unit]
Description=Lock NVIDIA device permissions to 600
After=multi-user.target
ConditionPathExists=/dev/nvidia0
[Service]
Type=oneshot
ExecStartPre=/bin/sleep 2
ExecStart=/bin/bash -c "chmod 600 /dev/nvidia* 2>/dev/null || true"
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
EOF

bash

运行

sudo systemctl daemon-reload
sudo systemctl enable nvidia-lock-perm.service
sudo systemctl start nvidia-lock-perm.service

六、TLP 终极省电配置

编辑配置:

bash

运行

sudo nano /etc/tlp.conf

把下面全部粘贴到文件末尾:

ini

CPU_SCALING_GOVERNOR_ON_AC=powersave
CPU_SCALING_GOVERNOR_ON_BAT=powersave
CPU_ENERGY_PERF_POLICY_ON_AC=power
CPU_ENERGY_PERF_POLICY_ON_BAT=power
CPU_BOOST_ON_AC=0
CPU_BOOST_ON_BAT=0

CPU_SCALING_MAX_FREQ_ON_BAT=2000000
CPU_SCALING_MIN_FREQ_ON_BAT=800000
CPU_SCALING_MAX_FREQ_ON_AC=2500000
CPU_SCALING_MIN_FREQ_ON_AC=800000

PLATFORM_PROFILE_ON_AC=low-power
PLATFORM_PROFILE_ON_BAT=low-power

PCIE_ASPM_ON_AC=powersupersave
PCIE_ASPM_ON_BAT=powersupersave

RUNTIME_PM_ENABLE="01:00.0"
RUNTIME_PM_ON_AC=auto
RUNTIME_PM_ON_BAT=auto
RUNTIME_PM_DRIVER_BLACKLIST="amdgpu"

WIFI_PWR_ON_AC=on
WIFI_PWR_ON_BAT=on
SOUND_POWER_SAVE_ON_AC=1
SOUND_POWER_SAVE_ON_BAT=1
SOUND_POWER_SAVE_CONTROLLER=Y
USB_AUTOSUSPEND=1

DISK_APM_LEVEL_ON_BAT="1"
DISK_APM_LEVEL_ON_AC="128"

保存退出,生效:

bash

运行

sudo tlp start

七、GRUB 内核节能参数

bash

运行

sudo nano /etc/default/grub

找到 GRUB_CMDLINE_LINUX_DEFAULT 改成:

plaintext

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash amd_cpufreq.boost_disable=1 mem_sleep_default=s2idle cpuidle.governor=teo"

更新并重启:

bash

运行

sudo update-grub
sudo update-initramfs -u
sudo reboot

调教完成验证方法

  1. 查看独显是否休眠

bash

运行

cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_status

输出 suspended 就是完全休眠。

  1. 查看整机功耗

bash

运行

cat /sys/class/power_supply/BAT0/power_now

正常稳定 6~7W

  1. 查看温度风扇

bash

运行

sensors

风扇 0 RPM、CPU 40 多度 就是完美状态。

  1. 检查有无程序占用 N 卡

bash

运行

sudo fuser -v /dev/nvidia*

无任何输出代表彻底隔离。


临时恢复独显用法(需要建模 / 渲染时)

bash

运行

sudo chmod 666 /dev/nvidia*
sudo modprobe nvidia

用完重新锁死即可,不破坏现有配置。

Reply Favorite View the author
All Replies
avatar
白行简
deepin
6 hours ago
#1

感觉你可以试试, 用开源server 驱动,没有卡死的问题 sudo ubuntu-drivers install 580-server-open

https://blog.ponder.work/2025/12/21/linux-as-the-only/#Nvidia-%E6%98%BE%E5%8D%A1%E9%A9%B1%E5%8A%A8

Reply View the author
avatar
Neil Gong(公)
deepin
5 hours ago
#2
白行简

感觉你可以试试, 用开源server 驱动,没有卡死的问题 sudo ubuntu-drivers install 580-server-open

https://blog.ponder.work/2025/12/21/linux-as-the-only/#Nvidia-%E6%98%BE%E5%8D%A1%E9%A9%B1%E5%8A%A8

谢谢指点,我研究下😃

Reply View the author
avatar
昨夜的星辰
deepin
4 hours ago
#3

我这AMD平台小主机在deepin25下跑得挺正常,待机和休眠都没问题

另一台AMD 6600H核显笔记本在deepin25路得也挺好,6.6时期用官方内核待机后有概率起不来,后来自己编译了内核很稳,基本没有出现过此问题

AMD平台在deepin25上功耗控制很好,有一台INTEL Ultra9 185H的本子在deepin25上功耗较高,处理器动不动就想飙频率

image.png

Reply View the author
avatar
白行简
deepin
4 hours ago
#4
昨夜的星辰

我这AMD平台小主机在deepin25下跑得挺正常,待机和休眠都没问题

另一台AMD 6600H核显笔记本在deepin25路得也挺好,6.6时期用官方内核待机后有概率起不来,后来自己编译了内核很稳,基本没有出现过此问题

AMD平台在deepin25上功耗控制很好,有一台INTEL Ultra9 185H的本子在deepin25上功耗较高,处理器动不动就想飙频率

image.png

我有个 AMD 5625U 的小主机,闲置的时候很安静,稍微有点负载风扇就起飞了(比如打开浏览器),使用体验很差。

好像就是常说的积热

Reply View the author
avatar
Neil Gong(公)
deepin
4 hours ago
#5
昨夜的星辰

我这AMD平台小主机在deepin25下跑得挺正常,待机和休眠都没问题

另一台AMD 6600H核显笔记本在deepin25路得也挺好,6.6时期用官方内核待机后有概率起不来,后来自己编译了内核很稳,基本没有出现过此问题

AMD平台在deepin25上功耗控制很好,有一台INTEL Ultra9 185H的本子在deepin25上功耗较高,处理器动不动就想飙频率

image.png

感谢。。

我搜索了大量论坛,发现笔记本合盖suspend后唤醒黑屏死机的问题,主要是出现在有独立显卡主机上,特别是amd cpu + nvidia的独显。如果不调教的话,不合盖直接 sudo systemctl suspend命令休眠,唤醒大概率一样黑屏死机。因为我是新手,我折腾了很久,一开始直接卸载英伟达驱动,导致温度飙升,风扇狂转。今天我为了降温/降功耗,发现只要N卡正常suspend,机器就可以正常唤醒。

另外我另一台主机 thinkpad T470核显的,装的debian,,正常休眠正常唤醒,丝滑流畅。

Reply View the author
avatar
mozixun
Moderator
an hour ago
#6

AMD这样的非信创平台用内核越新越好

Reply View the author