如何防止 ATI 显卡过热?

如何防止 ATI 显卡过热?

我的 HP Envy 1103-tx 笔记本电脑上的可切换显卡设置存在一些严重问题。

此款笔记本电脑配备:

  1. 英特尔高清显卡 4000
  2. AMD Radeon HD 7670M

ATI 卡变得非常热,导致笔记本电脑使用起来不舒服。

为了解决这些问题,我尝试了一些方法,但并没有真正完成:

  1. 设置电源配置文件使用echo "low" > /sys/class/drm/card1/device/power_method失败并出现Invalid argument错误。没有设置额外的内核参数。

  2. 关闭卡echo OFF > /sys/kernel/debug/vgaswitcheroo/switch最初使用它没有任何作用,在添加radeon.dpm=0到内核参数后,该命令导致崩溃,出现黑屏和错误日志,硬件重启后修复。


系统信息:

[root@MISTRI ashesh] $ cat /proc/version
Linux version 4.1.6-200.fc22.x86_64 ([email protected]) (gcc version 5.1.1 20150618 (Red Hat 5.1.1-4) (GCC) ) #1 SMP Mon Aug 17 19:54:31 UTC 2015

设备信息:

[ashesh@MISTRI ~] $ lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Thames [Radeon HD 7500M/7600M Series] (rev ff)

可切换显卡信息:

[ashesh@MISTRI ~] $ sudo cat /sys/kernel/debug/vgaswitcheroo/switch
[sudo] password for ashesh: 
0:IGD:+:Pwr:0000:00:02.0
1:DIS: :DynOff:0000:01:00.0

非常感谢您的帮助;我真的想解决这个问题。

PS:我不赞成安装第三方专有驱动程序。

答案1

如果不安装专有驱动程序,就无法解决这个问题。

它们可以通过在终端中运行来安装

sudo apt-get install fglrx-updates

答案2

我有类似的设置(请参阅我的回答为什么我的配备 AMD Radeon HD 76xx 显卡的笔记本电脑在使用 Ubuntu 时会过热?),我可以通过使用这个脚本(我称之为ati-cooldown):

#!/bin/bash 

if [ -f /sys/class/drm/card1/device/power_dpm_state ]; then
    cd /sys/class/drm/card1/device/ 
    echo battery > power_dpm_state
    echo low > power_dpm_force_performance_level
fi
if [ -f /sys/class/drm/card0/device/power_dpm_state ]; then
    cd /sys/class/drm/card0/device/ 
    echo battery > power_dpm_state
    echo low > power_dpm_force_performance_level
fi

您需要使用 来运行它sudo。要恢复正常运行,请使用balanced而不是batteryauto而不是 来创建另一个脚本low

if是必需的,因为尽管大多数时候 ATI 卡都是编号的card1,但有时它会被唤醒为card0--- ,所以我检查并尝试了两者。

当我使用独立 GPU 时,其温度会降至 25°C 左右 ---如果它正在运行,那就是

答案3

抱歉,但您出于什么原因想要避免使用专有驱动程序?Linux 内核根本无法支持它,制造商的专有驱动程序可以正常运行硬件,这样它就不会过热。

想想避免使用专有驱动程序的几个原因,但在这种情况下,这是你唯一的选择。硬件过热是一种安全隐患,如果热量进入你的身体,就会引发癌症。

你唯一的选择是真的想要避免使用专有驱动程序的方法是拆解通用 Linux 驱动程序和专有驱动程序,并合并专有驱动程序中负责风扇的部分。换句话说,如果你擅长编写脚本,你可以尝试这样做,但我一点也不赞同。这只是一个建议的替代方案,但如果你在编写脚本时犯了一个小错误,或者新的代码行不兼容,你可能会在你的腿上放一颗炸弹……或者你可能会烧坏风扇。

我强烈推荐专有驱动程序。它是由制造商编写的,并且已被证明是您使用的最佳选择,否则,制造商为什么要提供它?他们知道发热是 Linux 无法自行修复的一个缺陷,因此他们在驱动程序中修复了它。

我希望这篇文章对您有所帮助,但如果没有,请告诉我们您为什么坚决反对专有驱动程序。

干杯。

相关内容