本网页已闲置超过3分钟,按键盘任意键或点击空白处,即可回到网页

AMD和Nvidia谁能更好支持DirectX12的异步运算特性?
发布时间:2015-09-10
分享到:
AMD和Nvidia谁能更好支持DirectX12的异步运算特性?
发布时间:2015-09-10
分享到:

自从DirectX12面世以来,在谁能为新的API和其它特性提供更好的支持这个问题上,AMD和Nvidia从没有停止过争论。其中AMD不断地强调一个优势,即是其GCN对异步计算的完美支持。而就在不久前,Oxide Games的一个员工道出消息说,Nvidia的产品似乎并不支持异步计算,而且当想办法硬要尝试这样做时,带来的结果是性能变得更加糟糕。

不过这里需要明白一个区别,就是AMD和Nvidia两方之前所说的支持异步计算其实在硬件实现上并不是一回事。AMD的GPU内部使用异步命令引擎,它可以在低至一个命令周期的短延时下执行新的任务。一个高端AMD显卡有8个ACE,而每个ACE又有个队列。而Nvidia的Maxwell则只是有两个管路,其中,一个是高优先级图形管路,另一个管路具备31队列深度。而且,Nvidia并不能像AMD一样快速转换任务。

在之前的GDC2015大会上,就有人提到过Nvidia的优先级处理能力上的限制。有一段话是这么写的:Nvidia的GPU只能在绘制调用边界转换情境。在以后的GPU上,将会使用细粒度的优先级,不过这目前还比较遥远。

AMD在首款正式支持DX12的游戏《奇点灰烬》测试中占尽优势

在一些专业论坛比如Beyond3D and Overclock上,一些人就对AMD和Nvidia的硬件进行了异步计算性能测试。不过这些测试只是为了检测产品的延迟特性,并不是整体的性能测试,也就是说只是简单为了看下到底两者是不是具备异步计算的能力。

AMD R9 290显卡测试

第一张图是AMD的R9 290的测试。黄线是最佳参考线,就是GPU即时转换并执行任务的最佳状况。红线是异步执行表现,也就是我们首要关注的,结果表明GCN在多数情形下还是表现理想,即使线程不断增加,它也能保持性能稳定。

Nvidia的GTX 980 TI测试

第二张图是Nvidia的GTX 980 TI。当试图对其同步执行图形和计算任务时,果断出现了大量的高峰和低谷,同时也谈不上增益。图中看出Nvidia有一段比较靠近理想表现的情形,但这只是发生在线程并不高的情况下,其它大部分的情形都表现不佳。也有调查发现,Nvidia的异步管路貌似在初期很依赖CPU的性能,而AMD的GCN则是通过纯硬件发挥作用。

目前来看,AMD和Nvidia所指的异步计算确实指的是两种不同的概念,但是就当前对是否具备对图形和计算同时执行的能力测试来看,AMD是可以的,得益于它的ACE单元。而最大的疑问是,Nvidia的GPU到底可不可以。

AMD的GCN架构在目前很好支持了异步运算

NVIDIA双管路结构因缺乏驱动支持而导致尚处于下风

其实NVIDIA的Maxwell架构也应该是支持异步运算的,但实现这个功能需要软件及硬件两方面的参与,而NVIDIA现在出问题的地方就是驱动程序还没做好支持。与之不同的是,AMD的GCN架构中异步运算基本上都是硬件单元实现的,简化了开发,也不依赖驱动程序。

换句话说,现在评论谁支持得更好可能为时尚早,后期N-A大战应该还会陆续上演。

相关阅读:

燥热“中国芯”: 国产崛起还是扶不起的阿斗?

MIAOW:第一款开源图形处理器

AMD全球首推硬件虚拟化GPU:15个人共享

AMD开撕英伟达:没人能完全支持DX12

加入微信技术交流群

技术交流,职业进阶

关注与非网服务号

获取电子工程师福利

加入电路城 QQ 交流群

与技术大牛交朋友

讨论