从长远来看,哪组显卡驱动程序更适合进行测试?

从长远来看,哪组显卡驱动程序更适合进行测试?

因此,我的电脑有 Radeon 移动卡,而 Compiz 似乎不想与它很好地配合。这让我不得不做出权衡:我可以使用专有驱动程序并获得增强的性能,但会降低几个可用性项目,或者我可以使用“标准”驱动程序,并降低性能,以保证一切正常运行。

我也碰巧在这台机器的一个备用分区上做了很多 alpha 测试。这让我很疑惑,我应该使用哪个驱动程序?让“标准”驱动程序真正发挥更好的性能是否更重要?或者我应该向 Unity 提交错误报告,因为它不能与专有驱动程序正确配合使用?或者两者兼而有之。

开发人员建议我如何才能让项目从长远来看受益更多?无论使用哪种类型的显卡。或者这是应该使用哪种设置的一个因素?

答案1

作为 Ubuntu X 的维护者之一,我可以说:对开源和专有驱动程序进行测试都很有价值;我们有大量这两种驱动程序的用户,因此 Unity 在免费堆栈和专有堆栈上都能很好地运行非常重要。

但是,如果您希望测试发挥最大的作用,那么测试空闲堆栈是最好的办法 - 至少对于 AMD 卡而言。

开源 radeon 驱动程序拥有相当数量的开发人员 - 数量不多,而且还可以再多一些,但它得到了 AMD 的支持。除非有数百名全职开发人员加入,否则这些驱动程序无法达到与 fglrx 相同的性能,但它们完全有可能达到 90-95% 的性能;最后几个百分点的成本非常高。

它们也更容易改进——因为它们是开源的,我们可以查看修复情况,并且可以很多更容易证明在稳定版本中修复错误的合理性。使用 fglrx 驱动程序,我们只会得到一个混合了功能和修复的代码转储,具有未知的回归潜力。这使得我们很难在稳定版本中更新专有驱动程序。

最后,radeon 比 fglrx 有更大的改进前景。Radeon 开发人员关心整个桌面堆栈,而 fglrx 主要针对工作站用户。

对于 nouveau 来说,答案有点模糊。nouveau 的改进前景比 nvidia 更好 - 再次强调,nvidia 主要针对工作站市场 - 但 nouveau 比 radeon 更难取得进展,因为他们还需要对所有东西进行逆向工程。

所有这些主要适用于错误而不是性能。通常,生成一个好的性能错误比生成一个好的崩溃或不正确的渲染错误更难。渲染和崩溃错误通常只局限于一小部分代码,而性能问题通常涉及整个代码堆栈。寻找孤立的性能问题可能值得报告,但这不是常见的情况。

简而言之,性能问题通常需要主动努力才能识别 - 您不太可能偶然发现可操作的性能问题。错误 - 崩溃和错误渲染 - 您可以在正常使用过程中轻松识别。

答案2

如果您想为 Ubuntu 驱动程序的进一步开发和支持做出贡献,那么分配、支持和贡献以修复两个版本的错误是可行的方法。两者都很重要,但您需要区分您真正掌握的是什么。

封闭驱动程序就是封闭的。您可以说 Unity 因封闭驱动程序而无法使用,但最终,如果驱动程序无法正常工作,则没有什么可做的。官方版本已进行测试,但这并不意味着它适用于所有人。

我不得不说,我不相信开源驱动程序的性能会像封闭驱动程序一样好,但谈到 Ubuntu 和 Linux,我们希望至少有一种替代方案,让我们的硬件在最低条件下使用开源驱动程序运行。

我们希望确保,如果有这个选项,用户将能够在闭源驱动程序上顺利运行 Unity,但最重要的是,有一个开源、构建良好且稳定的驱动程序可用。

使用封闭式驱动程序,您可以打开错误、投诉,支持其他人报告数据以解决任何问题,但最终,为驱动程序的发展铺平道路是构建者的责任。

另一方面,封闭式驱动程序得到了广泛的支持,错误得到更直接的重视,开发工作已完成,但错误修复也根据具体情况进行。开源社区努力使其尽可能好地运行,并尽可能减少问题。

您花费的时间非常宝贵,用于报告使用封闭驱动程序运行时 Unity 中的问题,但恕我直言,开源驱动程序更值得您花费时间,而且您为支持它所付出的努力也将获得更多的价值。

相关内容