问题描述
我有14.04.5 /16.04或更高版本和AMD GPU。我没有得到我想要的性能,有些程序说他们需要像OpenCL这样的东西。
我听说过fglrx
,但是如果我尝试在我的机器上安装它,它会中断,我没有GUI。
有什么办法可以让我的AMD卡充分发挥其潜力吗?
最佳解决思路
PRE-NOTES
这个答案也适用于14.04(AKA 14.04.5)的最新HWE升级。该升级将Xorg和内核带到16.04版本。请阅读以下内容,了解更重要的原因。
背景
让我们从一般描述开始。
随着Ubuntu 16.04的发布,AMD缺乏专有驱动程序。你可能会问”Why?”。嗯,这是因为一些事情。
首先,它只是不兼容。您不会在16.04存储库中找到fglrx
,也不会在线找到16.04的版本。如果您从AMD的网站下载最新版本并安装它,您将遇到低图形模式,空白屏幕以及其他您不希望发生的令人讨厌的事情。
你可能希望AMD会介入更新驱动程序,但是你不可能知道AMD在Linux上放弃支持即使是稍微旧的卡的声誉。由于AMD不想更新驱动程序,Canonical可以为Ubuntu制作一个,但不会。由于16.04是LTS版本,Canonical必须维持AMD驱动程序至少5年,这很难做到。
AMD总是有可能发布另一种广泛兼容的图形驱动程序,或者人们可能会在Linux上放弃AMD。为一些Linux操作系统花费大量精力在驱动程序上是没有意义的(为所有操作系统做得更难),如果从AMD推出新的驱动程序,仍然需要支持。
更多相关信息:http://www.omgubuntu.co.uk/2016/03/ubuntu-drops-amd-catalyst-fglrx-driver-16-04
PERFORMANCE
现在,仅仅因为你没有专有的驱动程序并不一定意味着你将度过一个糟糕的时光。毕竟,英特尔做得很好。
如果您只是使用您的计算机进行网页浏览,发送电子邮件,在这里回答/提问,一些YouTube视频,而不是其他,那么缺乏专有驱动程序可能不会打扰您。你可能会注意到视频中有些口吃,你可能没有。老实说,事先没办法说出来。
如果您游戏,使用渲染应用程序,3D建模程序或任何其他图形高级或强烈的软件,您将处于一个更复杂的情况。
就我个人而言,我在这里以及其他地方的评论和文章中大多数都有报道说AMD开源驱动程序非常糟糕:程序不起作用,因为它们需要默认驱动程序无法提供的OpenGL /CL版本;游戏是迟滞和恶劣的;视频剪掉,随身携带音频;然而,我也看到一些人说他们可以玩得很好,视频很完美,而且没有麻烦。
这种矛盾可能是由于两种不同的开源驱动程序:radeon
和AMDGPU
。我相信AMDGPU
可提供更好的性能,但它仅适用于较新的卡。较老的卡(如果你不幸的话,AMD可能意味着6个月)卡在radeon
上,搜索谷歌和Ask Ubuntu会告诉你没有办法改变你正在使用的那个。至少,没有办法被释放。
就像许多事情一样,除非你尝试,否则你无法知道会发生什么,所以如果你愿意冒险升级,请继续。
OPTIONS
所以也许你冒险尝试,希望你有能获得AMDGPU
的卡,但不是那么幸运。也许你在不知道AMD的情况下安装或升级了。也许你有AMDGPU
,这还不够。无论您使用AMD图形处于16.04的原因是什么,有几种选择。第一个,也是最明显的,就是降级到14.04。
-
它仍然支持到2019年,所以你还有2-3年的时间来使用它。谁知道?到那时,AMD可能已经决定彻底改变其业务模式并实际提供良好的支持。
-
您可以使用
fglrx
并获得您想要/需要的性能。 -
请注意:14.04.5带来了Xorg 1.18,这是导致16.04开始出现问题的原因。幸运的是,完全可以将Xorg降级到1.16(14.04),因此您仍然可以使用
fglrx
。阅读here。
也许14.04对你来说太老了。也许它没有你那么多使用的新应用程序的兼容性。也许你不想经历备份数据和重新安装的麻烦。那么,还有另一种选择。 2.试用Oibaf’s drivers。
-
它们适用于AMD,NVIDIA和英特尔,因此如果您不喜欢NVIDIA的专有驱动程序或希望从您的英特尔卡获得更高性能,您甚至可以试用它们。
-
它们支持更新的OpenGL和OpenCL版本,因此依赖于它们的东西将起作用。
-
他们声称已经过优化,因此您可以看到性能的真正提升。
Oibaf的驱动程序似乎是fglrx
的一个很好的替代品,它可能是。但是,如果你有一张真正的AMD卡,你可能想试试AMD自己的产品。 3. AMDGPU-PRO
-
它是专有的并由AMD维护,因此它应该提供与
fglrx
相同的性能。 -
它实际上也适用于14.04,所以你可以尝试它,如果你仍然在那。
-
更新:16.60发布,增加了对不少旧(3-4岁)卡的支持。链接已更新。
不幸的是,AMDGPU-PRO不是fglrx
的真正替代品。虽然它确实提供了对16.04的支持,但它只兼容20个型号。那不是很多。
如果你不关心性能,或者你已经拥有了你需要的东西,那就不要费心去处理所有专有的东西,降级或奇怪的安装。 4.坚持使用开源驱动程序。
-
没有麻烦安装,因为他们已经在运行。
-
如果您不做任何特别的事情,他们会为您提供所需的一切。
请注意,这些通常不适用于游戏,尤其是高端游戏。 5.降级Xorg
-
这不适用于16.04。
它可能会工作,它可能会破坏您的系统,直到您重新安装正确的版本。但是,如果确实有效,则返回fglrx
。
阅读答案here。
选项在16.04远非限制,但其中一些可能不是最好的。我建议在做任何其他事情之前尝试使用Oibaf的驱动程序,如果你真的无法忍受性能并且不能使用AMDGPU-PRO,则只降级。
次佳解决思路
根据您的确切图形硬件,Ubuntu 16.04及更高版本将使用open-source AMDGPU驱动程序或open-source Radeon驱动程序,这两个驱动程序都包含在默认的Ubuntu 16.04+安装中。 16.04+的amdgpu驱动程序pre-installed用于AMD最新的显卡。 randon驱动程序,也是16.04+的pre-installed,用于amdgpu驱动程序不支持的旧AMD显卡。
为了显示可从默认Ubuntu存储库安装的所有驱动程序并且与您的硬件兼容,请打开终端并键入:
ubuntu-drivers devices
等待至少一分钟以使命令扫描您的计算机并生成驱动程序列表。此命令的输出将是包名称列表和可用驱动程序的简短描述。除了显示可用的开源驱动程序列表外,如果有可用的命令,上述命令通常还会为您的系统识别推荐的专有驱动程序。
ubuntu-drivers devices
不会显示官方Ubuntu存储库中没有的图形驱动程序,例如可从AMD官方网站获得的适用于Linux的AMDGPU-Pro图形驱动程序。如果您从默认的Ubuntu存储库以外的地方安装了专有的图形驱动程序,那么ubuntu-drivers devices
有时会将其显示为推荐的驱动程序,即使它无法正常工作也是如此。