![为什么 X 依靠软件而不是带有“nomodeset”内核参数的硬件来实现 3D 加速?](https://linux22.com/image/854305/%E4%B8%BA%E4%BB%80%E4%B9%88%20X%20%E4%BE%9D%E9%9D%A0%E8%BD%AF%E4%BB%B6%E8%80%8C%E4%B8%8D%E6%98%AF%E5%B8%A6%E6%9C%89%E2%80%9Cnomodeset%E2%80%9D%E5%86%85%E6%A0%B8%E5%8F%82%E6%95%B0%E7%9A%84%E7%A1%AC%E4%BB%B6%E6%9D%A5%E5%AE%9E%E7%8E%B0%203D%20%E5%8A%A0%E9%80%9F%EF%BC%9F.png)
我的笔记本电脑是 ASUS K55N,配备 AMD A8-4500M Trinity APU 和集成 Radeon HD 7640G。昨天我尝试了至少 8 个来自不同发行版(基于 slackware、基于 gentoo、基于 arch、基于 debian、基于 ubuntu)的实时会话,结果相同:挂起后背光关闭。
到目前为止我所做的效果更好的是修改/etc/default/grub
为:
GRUB_CMD_LINE_DEFAULT="nomodeset acpi_osi="
我的解决方法有效,但只是因为 Xfce 不依赖 3D 加速。如果您尝试更改为依赖 3D 加速的合成器,您将遇到高温问题。因此,如果您想使用漂亮而现代的桌面,如 KDE、GNOME、Cinnamon、Unity 或 Pantheon,您将需要 3D 加速,因此您无法使用,nomodeset
因此您无法暂停。
另一方面,据我所知,nomodeset 不应该在 X 启动后终止 3D 硬件加速。
问题是:
为什么 X 依靠软件而不是带有nomodeset
内核参数的硬件来实现 3D 加速?
更多信息请访问:bugs.launchpad.net
答案1
据我所知,X.org 的人已经删除了 XAA(X 加速),并要求 DRI(/dev/dri/card0)可用于渲染除通过 llvmpipe(软件渲染)以外的任何内容。当您使用 nomodeset 和 acpi_osi= 加载时,您将阻止 DRI 检测到您的卡。您可能能够登录,但速度会非常慢。
您可以通过输入以下内容来测试您正在运行的内容
glxinfo | 更少
并搜索 Gallium 3D 和/或 llvmpipe。
glxinfo 程序可能需要 mesa-utils 包,只是
安装 mesa-utils
如果需要则安装。