如何为Linux选择图形卡?


71

我正在构建或购买新的Linux系统,并且正在尝试选择最适合自己需要的显卡。我要如何做出这个决定?

有数十个计算机齿轮审查站点,这些站点充斥着新的图形硬件的每个细节,并针对Microsoft Windows执行详细的基准和优缺点。这些信息对于Linux还是有用的吗?是否有任何站点至少给Linux带来了粗略的印象?

我主要对2D性能感兴趣,但是由于现在新的桌面环境需要硬件加速3D,因此我也需要考虑这一点。在哪里可以找到有关购买前的信息?

我强烈希望有一个开源驱动程序。在不加入十几个不同的邮件列表的情况下,我如何判断哪种开源驱动程序在功能支持和性能方面是最好的?特定公司几乎总是最好的选择吗?还是会改变?

封闭源代码驱动程序的优缺点是什么?这主要是关于3D性能,还是专有驱动程序启用了我可能会错过的其他功能?既然开源驱动程序会将Linux内核标记为受污染,那么开源公司是否擅长为相关问题提供直接的最终用户支持?是最新的技术水平最终使我可以为任何给定的图形卡选择打开还是关闭,还是某些型号需要一个或另一个?

如果该卡可以轻松地与我选择的任何现代Linux发行版配合使用,而无需经历漫长的操作过程,那就太好了。这是一个合理的希望吗?如何最好地找到可以那样工作的卡?

如何找到特定的图形驱动程序是否适合市场上的给定型号?最好购买旧卡以确保获得支持吗?


我不是将其作为社区Wiki,因为我希望人们在回答问题时得到赞誉,但是如果您对问题本身有进一步的改进,请对其进行编辑或在此处添加注释,我将在其中进行整合。谢谢。
mattdm 2011年

仅仅由于封闭的Nvidia驱动程序而使受污染的内核真的值得吗?正如我所看到的,如果硬件性能是主要问题,那么我实际上并不真正关心驱动程序的“开放性”,而仅关注其性能。如果性能差距很小,那将是另外一回事了,但是根据我的经验,Nvidia的封闭驱动程序远远超过了开源等效产品的质量。但是,如果性能相同,我是否会对开源替代方案感兴趣?当然。
Shickadance先生2011年

11
@先生。Shickade-“污染”是一个技术术语。参见tux.org/lkml/#s1-18。此外,如上所述,尽管可能并不担心驱动程序的开放性,但这对我很重要,对其他人也很重要。
mattdm 2011年

1
好吧,这解释了事情。我从未从那个角度考虑过它。但是,我了解并非每个人都有相同的看法。作为台式机Linux用户,我很高兴Nvidia为他们的硬件提供了如此高质量的驱动程序。
Shickadance先生2011年

Answers:


32

这些天,开源驱动程序变得越来越好。我对Intel或AMD硬件没有任何问题。

英特尔,
我听说过的很糟糕,但是我的G4500HD可以满足我的所有需求。视频加速可能会更好。英特尔也没有专有的驱动程序,您唯一的选择是开源。KDE中的复合3D桌面在装有Intel芯片的笔记本电脑上可以很好地工作。

AMD / ATi
现在,较旧的卡比新的卡得到更好的支持。如果您能以某种方式获得x1800或同代产品,那可能是最好的。该r300g司机越来越超过开发工作r600g。这并不是说r600g不好,实际上很好!它仅在旧硬件的驱动程序后面。AMD拥有用于新硬件的专有驱动程序,但是以我的经验,您希望避免使用它。这很糟糕。该r300g驱动程序不支持所涵盖的硬件,因此打开的驱动程序是您唯一的选择。和我拥有的英特尔芯片一样,我的Radeon 4850可以在KDE中很好地运行复合桌面。

目前,我不推荐HD6000系列。6900s完全不支持开放式驱动程序,而其他则有基本支持。选择HD5000或HD4000。

Nvidia
他们有一个非常好的专有驱动程序,但是开放的驱动程序正在苦苦挣扎。它一直在变得越来越好,但Nvidia却无所作为以帮助开发人员。至少AMD为其硬件提供了一点帮助。

使用开放式驱动程序的好处是,它将在任何发行版中立即使用。如果您安装Fedora,则所有功能都可以使用,包括双屏和3D。专有的设置很麻烦。他们俩都没有正确设置我的双屏幕。Nvidia的安装比较容易,因为AMD blob对此很糟糕,因此并没有说太多。另外,每次更新内核时,都必须重新安装驱动程序。如果您安装了内部版本,大多数发行版都会解决此问题,但是如果您不安装它,那么一天早晨启动并意识到您更新了内核很烦人,现在X.org无法正常工作。

如果您不打算玩3D游戏,则Intel或AMD驱动程序是最好的。AMD的驱动程序比英特尔多了一个现代的,它采用内梅萨的Gallium3D架构(这是在g代表中r600g),但他们都完成这项工作。


该站点为您提供了简单易行的Fedora上有关Nvidia的说明。您的评论可能有点过时了。
Sardathrion 2012年

经过3年的努力,您的答案是否仍是2014年最新的?谢谢!
landroni 2014年

1
您可以检查两个大型免费软件驱动程序项目支持哪些功能。选择具有所需功能的版本,然后查找该版本很好支持的硬件。AMD硬件:xorg.freedesktop.org/wiki/RadeonFeature NVidia:nouveau.freedesktop.org/wiki/FeatureMatrix
Matthias Weiler

4年过去了。NVIDIA驱动程序仍然很痛苦。我想,如果他/她需要平均性能,那么唯一必须使用的VGA是Intel。他们是完全开放的,我喜欢这样。我不做游戏,所以我不知道玩家会怎么做。或高端VGA用户。
丹尼斯

24

尽管这篇文章是基于事实的,但仍然包含我的个人经验和观点。

英伟达

尽管有一个针对开源驱动程序的项目,但您可能需要考虑将Nvidia仅作为封闭源驱动程序。现在,在Nvidia的情况下,这并不会带来很多不好的事情,因为它们确实在驱动程序上非常努力。关于Linux上的封闭源图形卡驱动程序的最佳支持。

Nvidia图形卡是唯一在Linux和Windows上提供同等性能的图形卡。

尽管如此,封闭源驱动程序仍存在一些限制,例如不支持仅GPL驱动程序(如KMS)可用的功能。

英特尔

现在,在选择英特尔时,您需要格外小心。某些Intel图形卡实际上是第三方捆绑卡,不提供任何支持(或非常糟糕)。但是,如果您选择正确的芯片,则可以享受最好的开源驱动程序。例如,即使是非常低端的Intel卡,在合成窗口管理器时也可以比高端Nvidia卡更快。

AMD公司

现在,这很复杂。AMD提供了两种专有的驱动程序(这往往会吸引很多人),它们还发布文档并支持开源驱动程序的开发。

现在的问题是,开源驱动程序将永远不会包含某些经许可/专利/等功能,并且由于它们并不真正专注于封闭源代码驱动程序的开发,我想它们将永远落后于Windows功能/性能。


11

查看以下开放式和专有的Linux友好图形卡/芯片组列表:

http://www.phoronix.com/scan.php?page=category&item=Graphics%20Cards(提供基准测试和评论,而且很酷)

http://www.tldp.org/HOWTO/Hardware-HOWTO/video.html

http://hardware4linux.info/search/

http://xorg.freedesktop.org/wiki/Projects/Drivers?action=show&redirect=VideoDrivers

就个人而言,我会选择NVIDIA显卡。他们专有的linux驱动程序非常好并且经常更新。他们甚至发布了FreeBSD和Solaris的驱动程序版本。据我所知,目前还没有匹配产品(既不是专有软件也不是免费软件),而且自从GeForce系列问世以来,与NVIDIA卡相关的直接渲染和3D并没有任何实际问题。


2
这些是有用的链接,但是我非常希望看到一些详细说明。(有些比其他的更有帮助-TLDP文档谈论的是XFree86,而不是Xorg ...它的哪些部分仍然
有用

Xorg是XFree86的分支,因此某些部分可能仍然相关,认为需要进行大量调查才能弄清楚这些部分。我的最低建议是坚持使用phoronix审查过的软件,因为这是保证它可以在Linux系统上以最大容量运行,包括直接渲染和3d加速。
Shinnok 2011年

1
尽管旧的nvidia卡可能会很痛苦-即使驱动程序仍然可用,它们似乎也不容易在较新的内核上兼容(我的经验是使用Nvidia
VANTA


2

选择取决于您的目标。

  • 英特尔拥有最好的开源驱动程序。他们自己付出了努力。但是,英特尔图形解决方案并不是最佳的3D表现,因为它们仅是嵌入式的。

  • NVidia拥有具有出色3D性能的最佳专有驱动程序,并且提供高端3D硬件和嵌入式解决方案。每次内核升级(即使是次要的升级)都要保持最新状态。根据我的经验,这并不痛苦-只需重新构建并重新安装即可。开源驱动程序(nouveau)正在改进并与2D协同工作,但在3D方面仍落后。

  • AMD / ATI拥有出色的硬件,但其驱动程序无论是开放源代码还是封闭源代码,均低于英特尔和NVidia。您必须更好地使用较老的支持良好的卡,并且人们一直抱怨小故障。不过,他们的开源驱动程序发展很快,也许一年后它将成为3D空间中的有力竞争者。


1
“选择取决于您的目标”。如果他是统计学家,并且要在计算上使用图形卡,那么cuda就是nvidia所无法比拟的。
里卡多·克鲁兹

1

我可以告诉你我做什么:

检查是否支持该芯片和/或制造商是否提供了该卡的驱动程序。

例如,我有一个在Linux上没有问题的Nvidia。我可以从各种驱动程序中进行选择。这样效果很好。

Nvidia从来都不是Linux上的问题,大多数发行版的驱动程序中都有某些回购程序(在Fedora上,这是在fedora-fusion中)。这些是开源驱动程序,但是已经运行了好多年。我记得六年前直接从Nvidia资源在我的计算机上制作了kernelmod。

不要害怕投资一张新卡。对新卡的支持很快就会获得支持,并且由于它基本上都取决于芯片,因此需要支持该芯片。较新的卡通常具有相同的芯片设计,但是具有改进的性能和电源效率。

2D和3D性能或多或少相互融合。例如,合成桌面需要3D加速才能正常工作。

另一个有趣的方面是,闭源如何成为闭源驱动程序。Nvidia驱动程序开源的,但是另一方面,开发人员与他们的用户群和Linux开发人员保持着良好的联系。因此,源不是对所有人开放的,但它是非常有可能的,你可以对这些驱动程序的发展的影响。Xorg尝试了开发这些驱动程序并不是一件容易的事,但是它们有些失败,并且到目前为止,大多数人都依赖封闭的驱动程序。只要卡制造商提供免费且运行良好的Linux驱动程序,我都不明白为什么不应该使用它们。

要获取有关是否支持您的卡的信息,我在邮件列表中看起来不会太多,而是直接询问制造商。请记住:Linux用户社区已经不那么小了,尤其是在学术界和研究界,Linux通常是标准。因此,制造商也必须响应该用户部门。但是正如我在上面说的那样:这不是您要查找的卡的支持,而是它上的芯片的支持。

当进行基准测试时,可以使用Windows中的数据,只要它使用相同的加速工具包(如果有)(即OpenGL)即可。显然,在Linux上无法复制使用DirecX完成的基准测试。

无论如何,这就是我一直在决定为Linux计算机购买哪种图形卡的方式。


您是否知道Nvidia卡的Nouveau驱动程序?这就是您所描述的“某种失败”吗?你能详细说明吗?我看了一下Wiki和git树,尽管它没有变化,但该项目似乎没有死。
mattdm

我也很好奇您关于基准测试的声明。驱动程序对OpenGL性能没有影响吗?我记得曾经看到标题为“新ATI Catalyst驱动程序带来更好的性能”的文章,这纯粹是DirectX的东西,还是过去的人工产物,还是其他?(例如,参见phoronix.com/…- “从历史上看,即使两个驱动程序都稳定且成熟,Linux图形驱动程序的性能也落后于Windows。”)
mattdm

@mattdm:的确,我提到了新手司机。该项目尚未结束,但可以与PHP6媲美。它不是汽缸,但通常需要花费更长的时间才能完成,因为项目参与者低估了它的复杂性。
polemon 2011年

@mattdm:驾驶员确实是加速速度的一个因素。这通常是由于内核集成。要点是:滞后是线性的。这意味着,这些基准几乎可以与Windows和Linux上的基准进行1:1的比较,但是当将Windows与Linux进行比较时,就会看到差异,几乎总是支持Windows。
polemon 2011年

@polemon:我讨厌争论,但Phoronix说:“随着时间的流逝,理想情况下,我们将看到Intel的Mesa性能接近Windows驱动程序的性能,但不要指望在短期内看到这种情况。” 这意味着比较不能为1:1。(如果差异是由于内核集成引起的,并且不同的驱动程序与内核的交互方式不同-请参见@jonescb的答案-似乎与Windows结果存在非线性关系。)
mattdm


1

Matrox具有非常好的专有驱动程序。开源驱动程序将仅运行Matrox的原始功能,没有多头或3D。但是Matrox停止在RHEL 7下支持其M9148卡,这意味着我必须购买新的硬件。这不是很酷。


-1

不惜一切代价避免ATI专有。

我尝试在2001年左右使用一个-(本来可以是专有的或开放的,我忘了)..总计我的系统。

我在2011年尝试使用一个-整个系统。

在ATI团结一致之前,我将远离他们的产品。

哦,是的,即使他们设法运行它也不是小问题,但它完全是扭曲的屏幕和令人讨厌的硬裂纹。

NVidia可以正常工作,但是会妨碍安装尖端或自定义内核。

英特尔似乎是最低规格,我还没有使用过它们,但是似乎是在投资开源,我知道一些红帽公司对它们发誓。


-2

我建议您为Linux购买主流的nvidia卡,并在nvidia的官方页面上找到驱动程序。驱动程序安装程序将指导您自行安装。根据您使用的Linux发行版,安装过程可能有所不同,但是通常您可以在发行版的论坛上找到“ HOW-TO”。您无需购买旧卡。


4
您能在这里更好地解释您的理由吗?我特别注意到开源驱动程序对我很重要。
mattdm 2011年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.